在bash中,()和$()都创建一个subshell.
彼此有什么区别?他们的典型用法是什么?
()只是创建一个复合命令,在括号内运行命令. $()执行相同操作,也可以替代
输出.
从文档:
>(列表)
列表在subshell环境中执行…变量赋值和内置函数
在命令完成后,影响shell环境的命令不会保持有效.退货状态是
列表的退出状态.
命令替换
命令替换允许命令的输出替换命令名称.有两种形式:
$(command)
要么
`command`
Bash通过执行命令并使用命令的标准输出替换命令替换来执行扩展,删除任何尾随的换行符.
原文链接:https://www.f2er.com/bash/383625.html