MS-DOSバッチファイルコマンドのrenを使用してファイル名を置換することができない役に立った:2件
MS-DOSバッチファイルコマンドのrenを使用して sample1__01.txt と sample2__02.txt の
__(アンダーバー2個)を_test_に置換して、sample1_test_01.txt とsample2_test_02.txt が
自動でできあがるようにしたいのですがうまくいきません。
見よう見まねで ren *__*.txt *_test_*.txt と書いて実行させてみたのですが
sample1__test_.txt と sample2__test_.txt となってしまいます。
どうすれば思いどうりの結果を得ることができるのでしょうか?
ご存知の方がおられましたらご回答をよろしくお願いします。
回答(2)
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示
No.2ベストアンサー20pt
すいません。
誤:for %%A (*__*) do call :sub %%A
正:for %%A in (*__*) do call :sub %%A
この回答へのお礼
早速やってみたところ問題を解決することができました。
ご回答していただきどうもありがとうございました。
ren コマンドで * が使えるのはきわめて限定的なケースです。
ren A*.txt B*.txt のような。
バッチファイルを使って、1つずつリネームするしかないですね。
for %%A (*__*) do call :sub %%A
goto :eof
:sub
set A=%1
ren %A% %A:__=_test_%
goto :eof
この回答への補足
上記の記述をコピー&ペーストしてバッチファイルを実行してみたのですが
ファイル名を変更することができませんでした。
何かやり方に問題があったのでしょうか?
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示