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

 我来答
百度网友5311d79
2011-03-14 · TA获得超过1.9万个赞
知道大有可为答主
回答量:6356
采纳率:71%
帮助的人:3231万
展开全部
学习重在实践,自己敲一下,啥都出来了。
假设 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不是一个命令,因此会报错。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式