2016-07-09 38 views
0

このバッチラインがフルファイル名で動作します:バッチコマンドでファイル名にワイルドカードを使用する方法?

for /f "skip=3 delims=*" %%g in (cc_data_3-3-2016_15-37-19.xml cc_data_3-28-2016_0-25-36.xml) do (echo %%g >>tempfile.txt) 

ファイル名はワイルドカードで置き換えられている場合は、この1にはない:

for /f "skip=3 delims=*" %%g in (*.xml) do (echo %%g >>tempfile.txt) 

は、何が間違っていると私はそれを動作させるために何をすべきでしょうか? * .xmlファイルが必要です。それらはバッチファイルと同じフォルダにあります。

答えて

2

for /fはファイル名のみをとります。ワイルドカードを使用する場合は、ワイルドカードを自分で展開する必要があります。 forを使用すると、1回の通話ではなく、そのようにすることができます。

+0

@Anon_Cどのような素晴らしいソリューションですか。それは魅力のように働く。どうもありがとうございます。この難解な機能についてのドキュメントはどこにありますか? – Karel

+0

'echo %% g >> tempfile.txt'の代わりに' 'tempfile.txt echo %% g' 'と書いて、末尾のスペースもエコーされないようにします... – aschipfl

関連する問題