2012-01-12 24 views
8

私はこのバッチを持っている:Windowsバッチファイル - ディレクトリ内のファイルをループする方法?

for /f %%a IN ('dir /b *.pdf') do call convert.exe %%a 

これはCONVERT.EXEと同じフォルダ内のすべてのPDFファイルのthatsを取得します。 PDFがどこにあるのかを伝えたい。私は何を変えなければならないのですか?

ありがとうございます!あなたの\ディレクトリ\名\:ディレクトリ名がハードコーディングできる場合

答えて

20

、これはまた、ディスクのサブディレクトリ内のすべての.pdfファイルを返すこと

for /f %%a IN ('dir /b /s "Disk:\Your\Directory\Name\*.pdf"') do call convert.exe %%a 

注意となります。

+0

私は/ bが間違っていると思います。私は完全なパスが必要です...今は、完全なパスではなくファイル名だけを取得します。したがって、convert.exeのparamはパスなしのファイルだけです。 – EOB

+0

@ EOB:完全なパスを取得する必要がある場合は、/ sを追加する必要がありますが、/ bはそのままにしてください。それに応じて私の答えを変更しました。/bは出力の 'dir'ヘッダを抑制します - あなたは間違いなくバッチ処理にそれらを必要としません。 –

+1

注意:in()では、Windows 7のコマンドラインで '('と ')'が必要です – Jackie

関連する問題