shell中的命令替换

来源:互联网 发布:少儿围棋入门软件 编辑:程序博客网 时间:2024/05/20 10:10

在shell里面有倒引号”“”和$()两种命令替换方式:
如:
这里写图片描述

那么这两条命令有什么不同呢?
在多层次的复合替换命令中,倒引号需要加”\”转义,$()则不需要。
例:conmand1 conmand2conmand3
原意是先执行conmand3,将结果交给conmand2处理,最后再将conmand2的结果交给conmannd1处理。
但实际由于两个倒引号进行了嵌套,最终将conmand2conmand3解释成了conmand2、conmand3、`。
解决办法就是加上"\"进行转移conmand1
conmand2 `conmand3` `。
而conmand1(conmand2(conmand3))则不会出现上面这种情况,他会按照我们的意愿进行替换。
这里写图片描述

1 0