バッチファイル 2ファイルをfor /f処理したい
バッチファイルで別の2つのファイルを読み込んでfor /f処理するには
変換前のファイルのファイル名と
変換後のファイルのファイル名が
それぞれ別のファイルに書かれていて
この2つのファイルを読み込んで
リネームするバッチファイルを
記述したいのですが
2つのfor /fを使った場合、
一方が他方にネストされてしまうのですが
このような場合は
どのように記述するのでしょうか。
例えば、
変換前のファイル名が書かれたファイル(s.txt)と
変換後のファイル名が書かれたファイル(d.txt)
がある場合、
abc.txtをqrs.txt
d f.txtをtuw.txt
ghi.txtをx z.txt
:
にリネームしたいのですが
もちろんtest1.batではうまくいきません。
---test1.bat-------------------
for /f %%a in (s.txt) do
for /f %%b in (d.txt) do
ren "%%a" "%%b"
------------------------------
---s.txt----------------------
abc.txt
d f.txt
ghi.txt
:
---d.txt----------------------
qrs.txt
tuw.txt
x z.txt
:
------------------------------
以下の sd.txt のように1つのファイルにして
test2.bat のようにすればできますが
s.txt と d.txt の2つのファイルのままで処理するには
どのように記述すればよいのでしょうか。
---test2.bat-------------------
for /f "tokens=1,2 delims=," %%a in (sd.txt) do ren "%%a" "%%b"
---sd.txt----------------------
abc.txt,qrs.txt
d f.txt,tuw.txt
ghi.txt,x z.txt
:
-------------------------------
よろしくお願いします。(Windows7)
お礼
回答ありがとうございます。 ただ私としてはできればバッチファイルで処理したいと考えています。
補足
似た質問があり、そこで解決できました。 お騒がせしました。 http://okwave.jp/qa3557441.html