windows - 如何在 Windows 批处理文件中包含带有多行 var 的回车符?

标签 windows batch-file

您好,我正在尝试编写一个文件,该文件将包含 exec (putty) 的参数问题是换行技巧不起作用,我如何在每行后面放一个回车符来避免批处理来解释它作为输入。

set LF=^
set previousver=36
SET base=%fullver:1.2.0

set out=features:uninstall NOCFileLookup !LF
removeurl:mvn:org.NOC/NOCFileLookup-feature/%base%.%previousver%-SNAPSHOT/xml !LF
addurl mvn:org.NOC/NOCFileLookup-feature/1.2.0.37-SNAPSHOT/xml !LF
features:install NOCFileLookup!LF
config:edit NOCFileLookup !LF
config:propset context Testing !LF
config:update

@echo %out% > deployALL
start C:\"Program Files (x86)"\PuTTY\putty.exe -ssh localhost -l karaf -pw karaf -P 8101 -m deployAll

最佳答案

set LF=^ 技巧需要后面有两个空行才能起作用。此外,在延迟扩展样式中检索批处理变量的语法是在变量名的两侧 使用感叹号。参见 https://stackoverflow.com/a/28992360/1683264有关正确实现您正在尝试做的事情的示例。

但实际上,您正在为自己做更多的工作。为什么必须将所有行组合成包含换行符的单个变量?批处理语言不像 JavaScript 和其他语言那样非常欢迎多行变量值。如果您所做的只是将几行回显到一个文本文件,那么请使用多个 echo 语句。

>deployAll (
    echo features:uninstall NOCFileLookup
    echo removeurl:mvn:org..NOC/NOCFileLookup-feature/%base%.%previousve‌​r%-SNAPSHOT/xml
    echo addurl mvn:org.NOC/NOCFileLookup-feature/1.2.0.37-SNAPSHOT/xml
    echo features:install NOCFileLookup
    echo config:edit NOCFileLookup
    echo config:propset context Testing
    echo config:update
)

现在不是更具可读性吗?

关于windows - 如何在 Windows 批处理文件中包含带有多行 var 的回车符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30643300/

相关文章:

batch-file - 使用单个命令重命名 FTP 中的文件

batch-file - 仅用于 SFTP 上传特定扩展的 Bat 脚本

找不到对 GUID_DEVINTERFACE_NET 类的引用

Python 脚本作为安全的 exe,甚至可能是 Windows 应用商店应用程序?

windows - 如何在批处理文件脚本中循环打印程序的返回值?

windows - 如何使用批处理脚本读取 .properties 文件

windows - 限时试用和 Windows 认证

windows - 在 Windows dockerfile 中转义美元符号

windows - 让 WAMP 在 Windows Server 2012 上运行

java - 在 java 文件中搜索行并使用批处理脚本输出到另一个文件