batch-file - 批处理文件中带括号的回显命令

标签 batch-file echo

左括号在此命令中起什么作用?

为什么没有右括号?

>> datatest.csv.TEMP echo(!modified!

最佳答案

这是在 DosTips 上讨论的结果大约九年前。

您的代码将重定向 !modified! 的值到 datatest.csv.TEMP 或者如果变量为空,它将在该文件中打印一个空行。根据 echo /? , 官方显示空行的方式是使用 echo. .但是,如果 cmd.exe 以某种方式能够找到名为 echo 的没有扩展名的可执行文件。 (例如,与脚本位于同一目录中的文件),则使用该文件而不是常规 echo命令。
echo. 的一些替代方案被考虑,包括echo\ , echo: , echo/echo( . echo\在存在名为 echo 的文件夹的情况下被排除。其中包含一个与正在回显的内容同名的文件。 echo/在要显示的字符串以 ? 开头的情况下被排除在外。 ,因为在这种情况下显示了帮助。 echo:在使用字符串替换的极其罕见的情况下被排除在外。

最终,echo(最终的结果仅仅是因为没有人能找到它不起作用的情况。 (后来,有人猜测 echo=echo,echo; 都可以安全使用,没有奇怪的副作用或边缘情况。但是,如果您尝试显示文字字符串 /? ,则将改为显示 echo 的帮助。)
)不包括在内,因为它将被显示。

关于batch-file - 批处理文件中带括号的回显命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53927052/

相关文章:

javascript - javascript 中是否有等效的 php echo/print

windows - 无法使用批处理文件正确停止和启动tomcat服务器

windows - 在 pushd 中 pushd —— 可能吗?

Tomcat 指令 : translation from . bat to .sh

javascript - 如何通过js或者批处理文件在IE中自动启用 "initialize and script activex controls not marked as safe for scripting(ActiveXObject)"

php - 我怎样才能让这个得到 echo

PHP echo xyz 如果循环中的行不包含数据

bash - 使用 GitLab-CI 在 Docker 容器中找不到文件

javascript - 输入类型 ="text"没有回显?

windows - 命令提示符和cmd有什么区别?