Batch file 将变量重定向到文本文件时出现额外空间问题
当我运行以下行时:Batch file 将变量重定向到文本文件时出现额外空间问题,batch-file,Batch File,当我运行以下行时: set "Loc=%~dp0" echo %Loc% > C:\PLACE\LOCFILE.txt 我在LOC文件中收到以下信息: C:\BATCHLOC ^ Note Space 我正在尝试在单独的批处理文件中使用%Loc%,如下所示: ( set /p Loc= )<C:\PLACE\LOCFILE.txt ) call "%Loc%\FILENAME.bat" ( 设置/定位点= ) 修正: 修正: 这是更强大的
set "Loc=%~dp0"
echo %Loc% > C:\PLACE\LOCFILE.txt
我在LOC文件中收到以下信息:
C:\BATCHLOC
^
Note Space
我正在尝试在单独的批处理文件中使用%Loc%,如下所示:
(
set /p Loc=
)<C:\PLACE\LOCFILE.txt
)
call "%Loc%\FILENAME.bat"
(
设置/定位点=
)
修正:
修正:
这是更强大的
>"C:\PLACE\LOCFILE.txt" echo(%Loc%
当重定向直接在末尾时(如下图所示),开始处的重定向会阻止%loc%
中的3,4,5等数字破坏代码
当使用下面的技术时,像%loc%
中的测试2
这样的构造也将失败
这是因为末尾的一位数字被解释为流指示符,因此当数字0到9直接放在重定向字符之前时,都会出现问题(
或>
)
不要使用此选项:echo%Loc%>C:\PLACE\LOCFILE.txt
额外提示:
echo(
可防止echo命令中出现其他故障,(
字符已被测试为以这种方式使用时问题最小的字符
“
驱动器:\path\filename”
周围的双引号还可以防止长文件名元素(如空格)以及&
字符。这更为健壮
>"C:\PLACE\LOCFILE.txt" echo(%Loc%
当重定向直接在末尾时(如下图所示),开始处的重定向会阻止%loc%
中的3,4,5等数字破坏代码
当使用下面的技术时,像%loc%
中的测试2
这样的构造也将失败
这是因为末尾的一位数字被解释为流指示符,因此当数字0到9直接放在重定向字符之前时,都会出现问题(
或>
)
不要使用此选项:echo%Loc%>C:\PLACE\LOCFILE.txt
额外提示:
echo(
可防止echo命令中出现其他故障,(
字符已被测试为以这种方式使用时问题最小的字符
驱动器:\path\filename周围的双引号
还可以防止长文件名元素,如空格,以及&
字符。谢谢,这解决了我的问题!我在这个网站上玩得很开心,我喜欢快速准确的答案!如果LOC=3,这将失败谢谢,这解决了我的问题!我在这个网站上玩得很开心,我喜欢快速准确的答案回答!如果LOC=3,则此操作将失败。偶数1和2将中断,但方式不同。谢谢@joey我添加了更多信息。偶数1和2将中断,但方式不同。谢谢@joey我添加了更多信息。
>"C:\PLACE\LOCFILE.txt" echo(%Loc%