2011-08-12 16 views
1

コマンドラインで実行できるコマンドのリストを出力するバッチファイルがあります。コマンドをビルドしてバッチファイルから実行

set %foldername%="c:\my_folder" 
set %exename%="c:\my_utility.exe" 

cd %foldername% 
FOR /F "tokens=*" %%G IN ('dir *.xml /s /b /a:-d') DO @echo %exename% /x="%%G" 

これは基本的にバッチファイルを出力します。ここでは

は私がやっているの簡易版です。これは次のようになります。

c:\my_utility.exe /x="c:\my_folder\file1.xml" 
c:\my_utility.exe /x="c:\my_folder\file2.xml" 
c:\my_utility.exe /x="c:\my_folder\file3.xml" 
c:\my_utility.exe /x="c:\my_folder\file4.xml" 

これらのコマンドを実行します。現在、出力をバッチファイルにリダイレクトしてから実行する必要があります。 DOSプロンプトで「構築したばかりのコマンドを実行する」と言う方法はありますか?

+4

? –

+0

Doh!それを答えると、私はupvote&受け入れるでしょう。あなたはまさに正しいです。 – JosephStyons

+0

DOSをWindowsの一部のコマンドインタープリタと混同しないでください。 DOSはOSです。 –

答えて

1

だけFORループでechoを削除:あなたは `echo`を削除するには、単純にしようとしました

FOR /F "tokens=*" %%G IN ('dir *.xml /s /b /a:-d') DO %exename% /x="%%G" 
+0

私の愚かな見落としを指摘してくれてありがとう... – JosephStyons

関連する問題