問題:FORコマンドの出力により、%〜dpIが、REPLACEコマンドの宛先パスとして適切ではない最後に余分な\が付いたパスに展開されます。
質問:余分な\を取り除く方法は?
やりたいこと:ファイルが新しい場合は、ファイル1.txtをC:\aaaの下の各サブディレクトリにコピーします。
ディレクトリ構造:
c:\aaa
c:\aaa\1
c:\aaa\2
...
使用:
FOR /R C:\aaa %I IN (1.txt) DO REPLACE c:\aaa\1.txt %~dpI /U /R
サンプル出力:
c:\aaa>REPLACE c:\aaa\1.txt c:\aaa\1\ /U /R
Path not found - C:\aaa\1\
no files replaced
c:\aaa>REPLACE c:\aaa\1.txt c:\aaa\2\ /U /R
Path not found - C:\aaa\2\
no files replaced