gpt4 book ai didi

linux - 如何在终端不尝试将 “>>”或 “<<”传递给我的脚本的情况下,终端尝试将其解释为我追加到某物或获取标准输入?

转载 作者:行者123 更新时间:2023-12-03 10:00:16 24 4
gpt4 key购买 nike

我的python脚本可以将一系列按位运算符作为其参数之一。除了左上的“= <<”和右上的“= >>”外,它们都工作正常。我像./script.py -b +4,-4,=>>10,=<<1一样运行脚本,其中-b之后的任何内容都可以是类似操作的任意组合。但是,一旦终端看到“<<”,它只会将光标放到命令后的新行,并要求更多输入而不是运行脚本。看到“>>”时,我的脚本无法正确处理参数。我知道这是因为bash将这些字符用于特定目的,但是我想在仍在脚本自变量中使用“= >>”和“= <<”时解决它。有什么方法可以将参数括在引号中呢?
感谢您的帮助。

最佳答案

您应该将包含特殊符号的参数括在单引号中(此处,echo代表您的脚本):

> echo '+4,-4,=>>10,=<<1'
+4,-4,=>>10,=<<1
或者,将参数保存到文件中(例如 params.txt),然后使用反引号将其从文件中读取到命令行中:
> echo `cat params.txt`
+4,-4,=>>10,=<<1
最后,您可以转义一些令人讨厌的符号:
> echo +4,-4,=\>\>10,=\<\<1
+4,-4,=>>10,=<<1

关于linux - 如何在终端不尝试将 “>>”或 “<<”传递给我的脚本的情况下,终端尝试将其解释为我追加到某物或获取标准输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64641341/

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