windows - 将 '=' 参数传递给 Windows 批处理文件

标签 windows batch-file

我在将以 = 号结尾的参数传递给批处理文件时遇到了麻烦。考虑这个(> 作为 Windows XP 提示符):

> type c.bat
echo %1

> c.bat bla=
bla

> c.bat "bla="
"bla="

为什么bla=中的=被吞掉了?我应该如何在参数中传递 = 符号?

最佳答案

这是一个已知问题:http://support.microsoft.com/kb/35938

你可以像这样绕过它:

SET ARG1=bla= && your.bat && SET ARG1=

和你的.bat:

@ECHO OFF
ECHO %ARG1%

或者,您可以将其作为带引号的参数传递(在其周围使用“”):

your.bat "bla="

然后在批处理文件中使用如下:

echo %~1

在这种情况下,~ 只是删除了引号。

关于windows - 将 '=' 参数传递给 Windows 批处理文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4806960/

相关文章:

windows - 强制 Windows 批处理脚本返回代码 0

php - 我们可以配置 PHPStorm 不识别 mssql 库吗

batch-file - 批处理文件 - 搜索一个单词并提取变量中的下一个单词

相当于简单 DOS 命令行的 Powershell : "copy *.ps1 *.ps1.bak/y"

windows - 如何检查一个进程中可以使用的地址空间的最大内存量

windows - Windows 服务器重启后运行批处理脚本

c++ - 如何将 wchar_t* 转换为 long C++

linux - 将多个命令的输出重定向到单个文件

windows - 如何确定 SVN 工作副本是否需要更新(从脚本)?

windows - 默认应用程序,如 wget for windows