2017-07-27 4 views
0

フォルダ内の各ファイルに対してcertutil -hashfile MD5を実行し、出力をファイルに書き込むバッチスクリプトを作成しようとしています。certutil -hashfile:ドラッグドロップされたフォルダ内の複数のファイルを処理する

私は現在のフォルダ内のファイルでのみ動作する点を除いて、以下のコードを持っています フォルダをバッチファイルにドラッグドロップすると、そのフォルダのみが処理されるようにしたいと考えています。

for %%a in (*) do certutil -hashfile %%a MD5 >> MD5_log.txt 

またcertutil出力テキストの反復間のログファイルに出力スペースにそれを取得する方法はありますか?

答えて

0

実際は非常に簡単です!


だけ("%~1\*")またはその他のコマンドライン引数に(*)を変更します。ドラッグドロップフォルダが複数ある場合は、"%~1\*" "%~2\*"などを使用します。引用符(")を使用すると、スペースの問題を防ぐことができます。したがってパスは現在引用されています。 %%a%%~aになります。これは逆引用を意味します。

また、すべてのパスを含む変数を設定し、1つずつ処理することもできます。

結果:

for %%a in ("%1\*") do certutil -hashfile "%%~a" MD5 >> MD5_log.txt 
関連する問題