bash中`<(...)`'运算符'的名称是什么?

Arm*_*and 3 bash io-redirection

我熟悉为bash中的命令输入创建"临时文件",例如

cat file_1 <(echo hello) file_2
Run Code Online (Sandbox Code Playgroud)

我想更多地了解这个主题,但我不知道<( )运营商的名字.我怀疑这是一种IO重定向.

这个符号/运算符有名字吗?

fed*_*qui 11

这称为流程替换:

进程替换是一种重定向形式,其中进程的输入或输出(某些命令序列)显示为临时文件.

另请参阅Bash参考手册→3.5.6流程替换:

进程替换允许使用文件名引用进程的输入或输出.它采取的形式

<(list)
Run Code Online (Sandbox Code Playgroud)

要么

>(list)
Run Code Online (Sandbox Code Playgroud)

进程列表以异步方式运行,其输入或输出显示为文件名.作为扩展的结果,此文件名作为参数传递给当前命令.如果使用>(列表)表单,则写入文件将为列表提供输入.如果使用<(list)表单,则应读取作为参数传递的文件以获取列表的输出.请注意,<或>与左括号之间不会出现空格,否则构造将被解释为重定向.支持命名管道(FIFO)的系统或命名打开文件的/ dev/fd方法支持进程替换.

可用时,进程替换与参数和变量扩展,命令替换和算术扩展同时执行.