[已解决]求助有关shell中双引号的问题


#1

我在网上查询的资料中得知,双引号是弱引用,双引号中包含的反斜线是保留其原有功能的。所以我觉得这两个输出应该是一样的啊,可以是为什么双引号中的反斜线好像没起作用。我用的是 bash,希望各位能帮忙看一下。


#2

是你选的 “\p” 的问题,换 “$” 试试。

从我的 iPhone 发送,使用 Tapatalk


#3

对,换成 $ 这个符号就没问题了,这种现象有什么说法吗,还是说别的什么 :question:


#4

也许是因为双引号中反斜杠 「\」仅仅对有特殊意义的符号如 「$ ` \」进行转义,其余情况均原样输出。

而 「echo \p」,我记得「\」在 bash 中有,放在未写完命令后可换行继续写的效果,也就是达到命令行下写多行命令的效果,这个地方的反斜杠也许就被解释成了可换行,后面的原样输出,然后就是 p 了。

当然不一定的这样 :sunglasses: 仅供参考


#5

一开始我也是这么想的,觉得可能是只对特殊符号有意义,但愿就是这样的,实在不行以后尽量不用双引号了,哈哈 :weary:


#6

哈哈 :sunglasses: