Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan Now×
FREEDOM251

Freedom251 › Blog › data verification

How to Verify Files After Copying Them in Windows

By Freedom251 Team · · 12 min read

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a reliable post-copy check, calculate a SHA-256 hash for the source and destination and compare the two values. Matching hashes are evidence that the files have identical contents. For an immediate byte-for-byte check, use fc.exe /b. If you are still performing the copy with the classic copy command, copy /v verifies that each newly written file was recorded correctly, but it is not a later source-versus-destination hash comparison.

For folders, review a Robocopy log to see what the transfer reported, then hash particularly important files or use another explicit comparison. A transfer log records the operation; it does not, by itself, prove that every source and destination file has matching content or metadata.

As an Amazon Associate I earn from qualifying purchases.

Choose the check that answers your question

“Did Windows write the destination file correctly?” and “Does the destination now contain exactly the same bytes as the source?” are different questions. Pick the method that matches the assurance you need.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Method Best use What it establishes Important limitation
copy /v Checking a file while the classic copy command writes it Verifies that newly written files were recorded correctly Slows the copy and is not described as a later source/destination hash comparison
Get-FileHash Checking one file or proving that two files have the same contents Computes a hash; identical values indicate identical file contents You must calculate and compare the source and destination values separately
fc.exe /b Direct comparison of two files Compares files byte by byte and reports differences It is a two-file comparison, not a folder-wide transfer report
Robocopy log Reviewing a directory transfer Records what Robocopy reported during the operation A successful log is not a cryptographic or byte-for-byte comparison of every file

Verify one copied file with SHA-256 hashes

Hashing is usually the clearest answer when you need to know whether a source file and its copy contain exactly the same data. PowerShell’s Get-FileHash computes a digest from the file contents. Microsoft documents SHA-256 as the default algorithm in the PowerShell 7.5 documentation and explains that identical hash values indicate identical contents.

#1 Best Overall
Sale
TOZO A1 Wireless Earbuds Bluetooth 5.3 Light Weight in Ear Headphones | IPX5 Waterproof,2 Mics for AI Calls,Immersive Premium Sound Bass Headset with Charging Case,32 EQ via App Black
  • [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
  • [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
  • [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
  • [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
  • [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.

Calculate the source hash

  1. Open PowerShell. You can use Windows PowerShell or PowerShell 7; the command syntax below is the same.
  2. Run the command with the complete source path. Keep the path in single quotes so spaces in folder names are handled safely:
Get-FileHash -LiteralPath 'C:sourcefile.ext'

The result includes the path, the algorithm, and a Hash value. Record the value or leave the window open for comparison.

Calculate the destination hash

Run the same command for the copied file:

Get-FileHash -LiteralPath 'D:destinationfile.ext'

Compare the two Hash values character for character. If they match, the evidence supports that the source and destination have identical contents. If they differ, the files are not identical, even if their names and sizes appear the same.

Compare both values in one PowerShell expression

For a repeatable check, store each result and compare the properties directly:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
$source = Get-FileHash -LiteralPath 'C:sourcefile.ext'
$destination = Get-FileHash -LiteralPath 'D:destinationfile.ext'
$source.Hash -eq $destination.Hash

PowerShell returns True when the hash strings match and False when they do not. This compares content only. It does not establish that the destination has the same permissions, owner, timestamps, or other file-system metadata.

Make the algorithm explicit when documenting a procedure

Although SHA-256 is the documented default, specifying it can make a script easier for someone else to audit:

Get-FileHash -LiteralPath 'C:sourcefile.ext' -Algorithm SHA256
Get-FileHash -LiteralPath 'D:destinationfile.ext' -Algorithm SHA256

Use the same algorithm on both sides. A hash comparison is meaningful only when both values were produced with the same algorithm and the complete values match.

What a matching hash does and does not prove

The hash is calculated from file contents, not from the filename or the folder in which the file is stored. Two files with different names can therefore have matching hashes, while two files with the same name can have different hashes. A match is strong evidence of identical content for the two files you actually opened. It is not proof that the copy came from a particular person, that the storage device is healthy in every respect, or that the file is authentic. For authenticity, compare the result with an independently trusted expected hash or validate a digital signature.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Prevent a moving target

Hash the source and destination only after programs that may be writing them have closed. If a document, database, virtual-machine disk, or media file is still changing, the source hash may describe a different state from the one copied. When a mismatch appears, first confirm that the source was not modified between the copy and the check, then repeat the copy and verification.

Compare two files directly with fc.exe /b

Microsoft describes fc as a command that compares two files or sets of files and displays their differences. The /b switch selects a binary comparison, checking the files byte by byte. This is useful when you want a direct comparison instead of recording and manually comparing hash strings.

Rank #2
Sale
Smart Watch for Men Women Compatible with iPhone Samsung Android Phone 1.69 inch Full Touch Screen IP68 Waterproof Bluetooh Fitness Tracker Heart Rate/Sleep Monitor (Black)
  • 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
  • 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
  • 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
  • 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
  • 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.

Run the comparison from Command Prompt

Open Command Prompt and run:

fc.exe /b "C:sourcefile.ext" "D:destinationfile.ext"

Use double quotes when a path may contain spaces. If the files match, the command reports that no differences were found. If they do not match, it identifies differences rather than returning a cryptographic digest.

Run it from PowerShell without the alias problem

In PowerShell, type fc.exe, not just fc. PowerShell has an fc alias that can invoke a different command, so spelling out the executable avoids ambiguity:

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
fc.exe /b "C:sourcefile.ext" "D:destinationfile.ext"

fc.exe /b is especially convenient for two files that are already present. Hashing is often easier to record in an audit or compare later; binary comparison gives an immediate pairwise result.

When to use both methods

You do not normally need both a hash and fc.exe /b for every routine file. Use the hash when you need a compact value to save in a job record or compare with a value supplied separately. Use fc.exe /b when the two paths are known and you want Windows to compare them directly. If a hash mismatch is surprising, the binary comparison is a useful second check that confirms the files themselves differ rather than the comparison process being pointed at the wrong paths.

Use copy /v while copying with the classic command

The /v option on the Windows copy command verifies that new files were written correctly. Microsoft notes that this check can slow the command because each sector recorded on disk is checked. It is therefore a copy-time write verification, not a claim that Windows calculated and compared a source hash with a destination hash after the operation.

Example

copy /v "C:sourcefile.ext" "D:destinationfile.ext"

Use this when the copy itself is being performed with copy and you want the write operation checked as it completes. If the file was copied earlier, run Get-FileHash or fc.exe /b instead.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

When /v is the right choice

  • You are already using the classic copy command.
  • You want Windows to verify newly written data during that operation.
  • The extra time required for verification is acceptable.

Do not describe copy /v as proof that two existing files are identical. Its documented purpose is checking the recording of the new file during the copy. Microsoft’s copy documentation notes that although recording errors rarely occur, /v can be used to verify that critical data was correctly recorded.

Review a directory transfer with Robocopy

Robocopy is suited to folder jobs and can write a log for review after the command completes. A minimal logged transfer looks like this:

robocopy "C:source" "D:destination" /LOG:"C:Temprobocopy.log"

Open the log and inspect which files were copied, skipped, or reported with errors. Microsoft recommends creating a log and reviewing it after the operation.

Rank #3
New Bee Guitar Cable 10ft Electric Instrument Bass AMP Cord | 6.35mm Jack, Durable Design, Stage and Home Studio Use, Low Noise Shielded Electric Cord for Bass, Keyboard, Amp, Mixer
  • [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
  • [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
  • [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
  • [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
  • [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by

What a Robocopy log can and cannot tell you

The log is a transfer record. It helps you determine what Robocopy attempted and what it reported, but the cited Microsoft documentation does not state that a successful log entry compares cryptographic hashes for every source and destination file. If identical content is important, hash the files or use an explicit comparison after the transfer.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A log is also valuable for repeatability. Keep the source and destination paths, the command options, and the resulting log together. That record lets you see whether a file was copied or skipped and whether Robocopy reported an error, but it should not be relabeled as proof of byte-for-byte equality.

Content and metadata are separate checks

Robocopy lets you choose which categories of file information to copy with its /COPY flags:

Flag category Information covered
D File data
A File attributes
T Timestamps
S NTFS access-control lists
O Owner information
U Auditing information

The documented default is data, attributes, and timestamps. A data hash can match while permissions, ownership, auditing information, or timestamps differ. Decide which metadata matters before treating a copy as complete, and select the corresponding Robocopy options rather than assuming a content match covers it.

Plan folder verification by importance

For a small folder, checking every file with Get-FileHash may be practical. For a large transfer, keep the Robocopy log as the transfer record and independently hash the files whose contents are most important. If many files require independent verification, automate the PowerShell hash calculation and compare corresponding source and destination paths, preserving the results for review. A folder-wide log and a folder-wide content comparison are separate deliverables.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Understand the related verify command

Windows also provides the verify command, which controls whether cmd.exe verifies files written correctly to disk. You can display the current setting or use:

verify on
verify off

This is a command-interpreter setting related to write verification. It is not a replacement for comparing a source file and a destination file. For a clear one-file answer, use hashes or fc.exe /b; use copy /v when you want verification during a classic copy operation.

Choose a safe hash algorithm

Use SHA-256 for ordinary integrity checks unless a trusted workflow specifies another algorithm. Microsoft’s Windows PowerShell 5.1 documentation warns that MD5 and SHA1 are no longer considered secure and should be limited to simple change validation, not files that need protection from attack or tampering.

A matching hash demonstrates matching content relative to the two files you checked. It does not prove who created the file or that it came from a trusted source. To check authenticity or detect a malicious replacement, compare the result with an independently trusted expected hash or validate a digital signature. Do not treat a hash calculated from an untrusted copy as independent evidence.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
BSIMB 15.6" Digital Family Calendar & Chore Chart, No Subscription Fees
  • Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
  • Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
  • All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
  • Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
  • Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.

A practical workflow for one important file

  1. Finish the copy and close applications that may still be changing either file.
  2. Confirm the source and destination paths. Quote paths containing spaces.
  3. Run Get-FileHash with SHA-256 on the source.
  4. Run it again on the destination.
  5. Compare the complete Hash values, or use the PowerShell equality expression.
  6. If the values differ, run fc.exe /b to perform a direct binary comparison and investigate the copy rather than deleting the source immediately.
  7. If the contents match but the destination does not behave as expected, check metadata separately, especially permissions, owner, auditing information, attributes, and timestamps.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

A practical workflow for a folder copy

  1. Run the folder transfer with Robocopy logging enabled.
  2. Keep the log with the job record and review reported errors, skipped files, and the source and destination paths.
  3. Determine whether the job required only file data or also attributes, timestamps, NTFS ACLs, owner information, or auditing information.
  4. For high-value files, calculate SHA-256 on both sides after the transfer. A log review and a content hash answer different questions.
  5. If many files require independent verification, automate the hash calculation in PowerShell and compare corresponding paths; preserve the results so another person can review them.

Troubleshooting a failed verification

The hash values differ

  • Check that both commands point to the intended files, not similarly named files in different folders.
  • Confirm that the source was not modified after the copy began.
  • Review the Robocopy or copy output for errors and repeat the copy if necessary.
  • Use fc.exe /b to confirm that the files differ at the binary level.

The command cannot find a path

Use -LiteralPath with a quoted PowerShell path. In Command Prompt, put both file paths in double quotes. Check drive letters, folder spelling, and whether the destination drive is currently mounted.

PowerShell produces unexpected output for fc

Invoke fc.exe explicitly. The bare name fc can resolve to PowerShell’s alias rather than Microsoft’s file-comparison executable.

The contents match but the file still acts differently

A content hash covers file data, not all file-system metadata. Compare the attributes, timestamps, access-control lists, owner, and auditing information that your copy operation was expected to preserve. Robocopy’s /COPY selection determines which categories are transferred.

The check is taking longer than expected

Hashing and byte-by-byte comparison must read the files. The classic copy /v option also adds work because it checks recorded sectors, and Microsoft notes that this slows the copy. For routine transfers, use a logged Robocopy job and reserve detailed hashes for files or batches where independent content verification is worth the additional read time.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The files have the same size but fail verification

File size is not a content comparison. Different bytes can occupy the same number of bytes, so equal names and sizes do not establish equality. Use SHA-256 or fc.exe /b to test the actual contents.

The hash output looks different even though the files are equal

Compare the complete Hash property and ensure both commands used the same algorithm. Do not compare the displayed path or algorithm labels instead of the hash value. Re-run both commands with -Algorithm SHA256 if the procedure needs an explicit, consistent setting.

Which method should you use?

  • Need proof that two existing files contain the same bytes: calculate SHA-256 with Get-FileHash on both files.
  • Need an immediate direct comparison of two files: run fc.exe /b.
  • Need verification during a classic file copy: add /v to copy, accepting the slower operation.
  • Need to review a multi-folder transfer: use Robocopy with a log, then hash files whose content must be independently confirmed.
  • Need permissions or ownership preserved: verify the Robocopy metadata choices separately; matching data hashes do not establish metadata equality.

Windows versions and built-in tools

Microsoft’s command documentation for copy, verify, fc, and Robocopy lists Windows 10 and Windows 11 applicability. The hash guidance is versioned: the referenced Get-FileHash documentation covers PowerShell 7.5, while the MD5 and SHA1 warning is also documented for Windows PowerShell 5.1. These checks use Windows command-line or PowerShell tools; no paid application is required.

Bottom line

For the strongest general-purpose answer, compare SHA-256 hashes from the source and destination. Use fc.exe /b when you want a direct byte comparison, copy /v to verify writes during a classic copy, and a Robocopy log to review a directory transfer. Keep content verification separate from metadata and authenticity checks so each result says exactly what it proves.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Frequently Asked Questions

What is the most reliable built-in way to verify a copied file?

Run Get-FileHash with SHA-256 on the source and destination, then compare the complete Hash values. Matching values indicate identical contents for those two files.

Does copy /v compare the source and destination hashes?

No. copy /v verifies that files written by the classic copy command were recorded correctly. It is a copy-time write check, not a later source-versus-destination hash comparison.

Should I use fc.exe /b or PowerShell hashing?

Use fc.exe /b for an immediate byte-by-byte comparison of two known files. Use Get-FileHash when you want a value to save, audit, or compare with an independently supplied expected hash.

Can a Robocopy log prove every file matches?

A Robocopy log records what the transfer reported and helps identify copied, skipped, or failed items. It should not be treated as a cryptographic or byte-for-byte comparison of every source and destination file.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Will matching hashes prove permissions and timestamps were copied?

No. Hashes cover file data. Robocopy’s /COPY categories separately govern data, attributes, timestamps, NTFS ACLs, owner information, and auditing information.

Are MD5 and SHA1 suitable for important integrity checks?

Microsoft documents MD5 and SHA1 as no longer secure and recommends limiting them to simple change validation. Use SHA-256 for ordinary integrity checks, and use a trusted expected value or signature when authenticity matters.

Why does PowerShell need fc.exe instead of fc?

PowerShell has an fc alias that can resolve to a different command. Calling fc.exe explicitly invokes Windows’ file-comparison executable.

What should I do if the hashes differ?

Confirm both paths, make sure neither file changed during the copy, review copy or Robocopy output, and repeat the transfer if needed. You can run fc.exe /b to confirm the files differ at the binary level.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The Bottom Line

Compare SHA-256 hashes for the clearest proof that copied files contain the same bytes. Use fc.exe /b for a direct pairwise comparison, copy /v during a classic copy, and Robocopy logs for transfer review. Check metadata and authenticity separately.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

data verificationfc.exefile integrityGet-FileHashPowerShellROBOCOPYWindows

Leave a Reply

Your email address will not be published. Required fields are marked *

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.