shell脚本---$()和${}区别

转载:https://blog.csdn.net/itworld123/article/details/125447252

一、$()

$() 小括号里面是 Linux 命令,作用就是执行里面的命令后返回执行的结果;和 ``(反引号)作用一样。

$() 与 ``(反引号)都是用来作命令替换的。命令替换与变量替换差不多,都是用来重组命令行的,先完成引号里的命令行,然后将其结果替换出来,再重组成新的命令行。

比如: 

ls $(pwd)

其实是要执行 () 里面的命令 pwd,然后用执行的结果替换 $() 内容。 

等价于:

ls `pwd`

二、${}

${} 变量替换,大括号里面是变量,取变量的值替换 ${}。一般情况下,$var 与 ${var} 是没有区别的,但是用 ${} 会比较精确的界定变量名称的范围

例如:大括号里面数组变量

$ A = (hello linux shell)    # 定义一个数组变量

$ echo ${A[0]}                 # 取数组的第一个元素的值

则会输出 hello。

posted on 2022-11-16 11:44  林西索  阅读(608)  评论(0编辑  收藏  举报