gpt4 book ai didi

batch-file - 批量将变量视为字符串

转载 作者:行者123 更新时间:2023-12-02 01:16:09 26 4
gpt4 key购买 nike

我正在尝试制作一个批处理脚本,它会创建一个名为 MigrateOldStickyNotes.bat 的新批处理脚本,其中包含几个简单的命令。

@echo SET CP=%~dp0> "%cp%\%ME%\%ME%\MigrateOldStickyNotes.bat"
@echo SET ME=%Username%>> "%cp%\%ME%\%ME%\MigrateOldStickyNotes.bat"

但不是用这些看起来完全像这样的行创建一个新的批处理文件。

SET CP=%~dp0
SET ME=%Username%

它将创建一个新文件并使用变量作为输入。这将导致这些行。

SET CP=\\sosy-nas\Backup\
SET ME=itcebrha

我如何让脚本将变量视为字符串而不是将其视为变量。

最佳答案

用百分号转义百分号,如SET CP=%%~dp0
所有其他(特殊)字符都使用插入符 ^ 进行转义。

原因是百分号是在批处理解析器的另一个阶段处理的,而不是所有其他字符。
这也是百分号转义仅在批处理文件中有效,而在命令行中无效的原因,因为 cmd 行解析器对百分号有不同的扩展规则。

关于batch-file - 批量将变量视为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42511550/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com