fciv.exeでファイルの整理2
fciv.exeを使ってファイル整理をしてみる
J:\>fciv -add hogehoge.bat
//
// File Checksum Integrity Verifier version 2.05.
//
d9a5d8a6db77382d4b660554adaf64a9 j:\hogehoge\hogehoge.jpg
「ハッシュ値」+「空白」+「ファイルの場所」が出力される
ハッシュ値(一方向要約関数の値)なので、このファイル以外にこの値は存在しない
オプションで複数ファイルの一括取得も可能
標準出力で一覧をテキストとして得る
J:\>fciv -add hogehoge.bat > hash.txt
得たテキストファイルをエクセルで読み込み、ハッシュ値でソートする
同じハッシュ値はバイナリレベルで同一のファイルとなる
列を一つ用意して
=IF(D2=D1,"del ","")
こんなエクセル関数でdelを付与する
delが付与されたファイルと空白とファイルの場所を連結する
ファイルの場所は「"」ダブルコーテーションで囲んでおく
この連結されたテキストをバッチファイルに書き出して実行する
(ドット)付のファイル名やアクセス権、読み取り専用などのファイルは処理されないので注意する
読み取り専用を解除するならattribコマンドが便利、アクセス権を変更するならicaclsコマンドが便利です
ハッシュ値をファイル名に転用すれば、同名ファイルで保存不可も回避できる