在Bash中,单引号(''
)和双引号(""
)有什么区别?
发布于 2011-07-15 02:02:55
如果你指的是回显时发生的事情,单引号将从字面上回显它们之间的内容,而双引号将计算它们之间的变量并输出变量的值。
例如,如下所示
#!/bin/sh
MYVAR=sometext
echo "double quotes gives you $MYVAR"
echo 'single quotes gives you $MYVAR'
将给出这样的结果:
double quotes gives you sometext
single quotes gives you $MYVAR
发布于 2018-08-19 16:43:57
' '
和" "
的用法有明显的区别。
当在任何地方使用' '
时,都不会进行“转换或转换”。它是按原样打印的。
有了" "
,无论它围绕着什么,都会被“翻译或转换”为它的价值。
关于翻译/转换,我的意思是:单引号内的任何内容都不会被“翻译”为它们的值。它们将被用作引号内的内容。例如:a=23
,然后echo '$a'
将在标准输出上生成$a
。而echo "$a"
将在标准输出上生成23
。
发布于 2021-12-30 10:53:07
需要一个最小的答案才能让人们在不像我一样花费太多时间的情况下开始工作。
令人惊讶的是(对于那些正在寻找答案的人),下面是一个完整的命令:
$ echo '\'
其输出为:
\
甚至对于bash的老用户来说,反斜杠在单引号内也没有任何意义。其他的也不是。
https://stackoverflow.com/questions/6697753
复制相似问题