bash

bash的«, «<, < <()用法



cmd «EOF
..
EOF
含义是here-document,表示传给给cmd的stdin的内容从这里开始是一个文档,内容碰到EOF为截止。



把EOF之间的内容,作为一个文档传递给cmd作为其stdin的内容。



cmd «< “string”
含义是here-string,表示传给给cmd的stdin的内容从这里开始是一个字符串。



$ cat «<”aaa”
把字符串”aaa”传递给cmd作为其stdin的内容

cmd1 < <(cmd2)
标准名称叫:Process substitution
这个语法看起来很怪异,其实他就是两个语法。



<(cmd2): 把cmd2的输出写入一个临时文件
cmd1 < : 这是一个标准的stdin重定向。
把两个合起来,就是把cmd2的输出(stdout)传递给cmd1作为输入(stdin);中间通过临时文件做传递。
举一个例子:



$ cat < <(echo “12345”)
12345



https://www.jianshu.com/p/864dd13c181d


Category linux