首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Bash中单引号和双引号的区别

Bash中单引号和双引号的区别
EN

Stack Overflow用户
提问于 2011-07-15 01:55:27
回答 3查看 306.7K关注 0票数 724

在Bash中,单引号('')和双引号("")有什么区别?

EN

回答 3

Stack Overflow用户

发布于 2011-07-15 02:02:55

如果你指的是回显时发生的事情,单引号将从字面上回显它们之间的内容,而双引号将计算它们之间的变量并输出变量的值。

例如,如下所示

代码语言:javascript
复制
#!/bin/sh
MYVAR=sometext
echo "double quotes gives you $MYVAR"
echo 'single quotes gives you $MYVAR'

将给出这样的结果:

代码语言:javascript
复制
double quotes gives you sometext
single quotes gives you $MYVAR
票数 239
EN

Stack Overflow用户

发布于 2018-08-19 16:43:57

' '" "的用法有明显的区别。

当在任何地方使用' '时,都不会进行“转换或转换”。它是按原样打印的。

有了" ",无论它围绕着什么,都会被“翻译或转换”为它的价值。

关于翻译/转换,我的意思是:单引号内的任何内容都不会被“翻译”为它们的值。它们将被用作引号内的内容。例如:a=23,然后echo '$a'将在标准输出上生成$a。而echo "$a"将在标准输出上生成23

票数 4
EN

Stack Overflow用户

发布于 2021-12-30 10:53:07

需要一个最小的答案才能让人们在不像我一样花费太多时间的情况下开始工作。

令人惊讶的是(对于那些正在寻找答案的人),下面是一个完整的命令:

代码语言:javascript
复制
$ echo '\'

其输出为:

代码语言:javascript
复制
\

甚至对于bash的老用户来说,反斜杠在单引号内也没有任何意义。其他的也不是。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6697753

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档