※2024/06/19(水)更新: Windows 11版もあります。
Windowsで巨大なフォルダをコピーした場合、コピーが本当に正常に終了したのか失敗したのか分からなくなることがあると思います。
そのような場合、コピーが完全に成功したのかどうかを判別するため、フォルダ内に存在するファイルの数をカウントして比較することができます。
ファイルの中身までは分かりませんが、少なくともファイルの数が異なっている場合、コピーが中途半端に終わっていることがわかるためです。
以下フォルダに含まれる全てのファイルをカウントする方法を説明します。
エクスプローラーのプロパティ
最も簡単な方法はファイルエクスプローラーで目的のフォルダを右クリックし、プロパティを確認する方法です。
▲「全般」タブの「内容」にファイル数とフォルダ数が表示されます。なおファイル数やフォルダ数は瞬間的に表示されるわけではなく、表示完了までにカウントする時間がしばらくかかります。
コマンドプロンプト
コマンドプロンプトで「dir」コマンドを使用することもできます。目的のフォルダで以下のコマンドを実行します。
dir /w /s /a *.*
オプションの「/w」はワイド形式での表示、「/s」は指定フォルダ以下の全てのサブディレクトリの表示、
「/a」は全ての属性のファイルの表示という意味です。「*.jpg」のようにワイルドカードを変更すれば特定の種類のファイルをカウントするといったことも可能です。
▲コマンド実行後しばらく時間がかかりますが、最後にファイルの総数が表示されます。
PowerShellコマンド
PowerShellでもカウント可能です。目的のフォルダで以下のコマンドを実行します。
Get-ChildItem -Force -Recurse -File | Measure-Object | %{$_.Count}
オプションの「-Force」は隠しファイルの表示、「-Rcurse」は再帰的検索、「-File」はファイルの表示を意味しています。
▲上記コマンドの場合シンプルにファイル数が表示されます。バッチファイルなどから呼び出して処理を自動化したい場合、この方法が便利です。
まとめ
ファイルコピーが成功したかどうかを判定したい場合、コピー先、コピー元の2つのフォルダで上記3つの方法のどれかを用いてファイル数を確認します。オプションの指定によって結果が異なることが考えられますので、同じ方法でカウントすると良いでしょう。