简述bash shell命令行替换中单引号、双引号、倒引号的区别,以$PATH为例

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 02:57:09
简述bash shell命令行替换中单引号、双引号、倒引号的区别,以$PATH为例

简述bash shell命令行替换中单引号、双引号、倒引号的区别,以$PATH为例
简述bash shell命令行替换中单引号、双引号、倒引号的区别,以$PATH为例

简述bash shell命令行替换中单引号、双引号、倒引号的区别,以$PATH为例
学习重在实践,自己敲一下,啥都出来了.
假设 PATH=/etc
1)单引号会屏蔽 $ 的取值功能.
# echo '$PATH'
$PATH
2)双引号则不会.
# echo "$PATH"
/etc
3)倒引号表示优先执行.下例即是先执行echo命令,然后将结果赋值给myPath.
# myPath=`echo $PATH`
# echo $myPath
/etc
否则
# myPath=echo $PATH
这样会报错,因为shell命令解析是根据空格“分割重组”的.先分割成myPath=echo和$PATH,然后做变量替换,$PATH被替换为/etc,最后重组变成:myPath=echo /etc.显然/etc不是一个命令,因此会报错.