次のようなフォルダーツリーがあります(これは単なる例であり、実際のケースではより深くなります)。
C:\test
|
+---folder1
| foo bar.txt
| foobar.txt
|
+---folder2
| foo bar.txt
| foobar.txt
|
\---folder3
foo bar.txt
foobar.txt
ファイルの名前に1つ以上のスペースがあり、それらに対してコマンドを実行する必要があるため、foo bar.txtには興味がありますが、foobar.txtには興味がありません。
私は試しました(バッチファイルの中で):
for /r test %%f in (foo bar.txt) do if exist %%f echo %%f
コマンドは単純echo
です。
スペースがスキップされて出力が得られないため、機能しません。
これは機能しますが、私が必要とするものではありません:
for /r test %%f in (foobar.txt) do if exist %%f echo %%f
それは印刷します:
C:\test\folder1\foobar.txt
C:\test\folder2\foobar.txt
C:\test\folder3\foobar.txt
引用符( ")を使用しようとしましたが、機能しません。
for /r test %%f in ("foo bar.txt") do if exist %%f echo %%f
引用符が出力に含まれているため、機能しません。
C:\test\folder1\"foo bar.txt"
C:\test\folder2\"foo bar.txt"
C:\test\folder3\"foo bar.txt"