私がやろうとしていることを正確に説明する方法はわかりませんが、理解できないことを示すバッチファイルの例を次に示します。
バッチファイルがあります。そのバッチファイル内に、ディレクトリを作成しようとしています:
Set CopyFrom = %~dp0
if Exist "%ProgramFiles(x86)" (
Set TargetDir = %ProgramFiles(x86)%\My Directory Name has spaces
)
md %TargetDir%\NewSubFolder
copy %CopyFrom%\SourceFile.zip %TargetDir%\NewSubFolder
バッチ ファイルが 4 行目で次のように失敗していますSet TargetDir =...
。
\My was unexpected at this time
これは、パス名にスペースが含まれているためだと思います。変数を引用符で囲むだけでよいと思いました:
Set TargetDir = "%ProgramFiles(x86)%\My Directory Name has spaces"
しかし、ディレクトリを作成する行に到達すると%TargetDir%
、引用符で囲まれているため失敗します。md "%TargetDir%"\NewSubFolder
これを修正できますか、それとも VBScript を記述して整理する必要がありますか?