linux脚本命令中加单引号什么意思

2024-11-15 16:43:31
推荐回答(3个)
回答1:

表示按照字面意思引用所有字符。例如你的用户名叫做aaa,则
echo
'username
$USER'
将显示
username$USER
这13个字符(字面意思),而
echo
username$USER
将显示
usernameaaa(经过了元字符$的转换)。
单引号是元字符(带有特殊含义的字符)的一种,表示强引用。与之相对,双引号
"
表示弱引用,它会保留
美元符号$
反斜线\
反引号`
这三个元字符的特殊含义,所以
echo
"username$USER"
仍然会得到
usernameaaa。
脚本中的命令提交给shell逐条处理,而shell在处理这些命令时,需要元字符实现更丰富的功能。例如上面例子中的
$
一般用来获得变量的值;但shell会立即解释元字符(例如将$USER出现的地方,直接替换为
aaa),所以当我们需要保留这些元字符时,要用到单引号。

回答2:

单引号内的部分原封不动引用,即使变量也不被其值取代。假如$a已经被赋值为5,‘$a’表示$a,而不是5(如在双引号内或没有引号时,则被解释为5)。

回答3:

单引号在正则表达式中是
消除引号内特殊字符的一样
比如
1+2
表示1加上2的值
'1+2'就是一个字符串,不计算加号的意义
计算随意出入的数字要再脚本中加入read命令就读你输入的数据