gpt4 book ai didi

windows - 转义批处理文件的括号内的括号

转载 作者:行者123 更新时间:2023-12-03 08:47:58 24 4
gpt4 key购买 nike

这就是我想要做的:

(
@echo This is some code that is
@echo Important to echo exactly as-is
@echo Even if I use parenthesis
@echo for something (like this)
)|clip

因此,将其复制到剪贴板中。我尝试了以下方法:
(
@echo This is some code that is
@echo Important to echo exactly as-is
@echo Even if I use parenthesis
@echo for something ^(like this^)
)|clip

但这似乎也影响了我的通缉括号,因为我收到一个错误。为了测试这个,我简单地做了:
(
@echo This is some code that is
@echo Important to echo exactly as-is
@echo Even if I use parenthesis
@echo for something ^(like this^)
FFF
)|clip

嘿!这几乎有效,文本一直复制到“this”中的“s”。它不会复制最后一个括号,或者显然是 F。有任何想法吗?

最佳答案

很明显,你需要三个插入符号:-)

(
@echo This is some code that is
@echo Important to echo exactly as-is
@echo Even if I use parenthesis
@echo for something (like this^^^)
)|clip

为什么?这有点棘手...

首先解析器解析块并转义部分 this^^^)this^) ,括号在这里第一次被转义了。

但是当您使用管道时,整个块将被转换并传输到新的 cmd.exe 实例。 C:\Windows\system32\cmd.exe /S /D /c" ( @ echo This is some code is ... & @ echo for something (like this^) )"
并且在新实例中,有必要再次转义右括号。
就这样!

有关更多信息,您可以阅读类似的问题
SO: why does delayed expansion fail when inside a piped block of code

关于windows - 转义批处理文件的括号内的括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12976351/

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