ファイル名と場所を含む変数内のすべてのバックスラッシュ () をスラッシュ (/) に変換しようとしています。これについて読んだところ、次のことがわかりました。
%variable:str1=str2%
そして
set "var=%var:\=/%"
試してみましたが、明らかにうまくいきませんでした。
私の .bat スクリプトの関連セクションは次のとおりです。
FOR %%f IN ("E:\myfiles\app1\data\*.csv") DO (
echo %%f
set "f=%%f:\=/%"
echo %%f
echo.
)
出力には、リストされている各ファイル名が 2 回表示されます。
つまりこの行:
set "f=f:\=/%"
期待通りに動作しません。何が間違っているのか分かる人はいますか?
ベストアンサー1
これにより、変数内のバックスラッシュがスラッシュに変更されます。
set "variable=E:\myfiles\app1\data\*.csv"
set "variable=%variable:\=/%"
echo "%variable%"