假设我有一个shell命令foo
,它希望将bar.txt
这样的文件作为参数,我想将一行文件传递给foo
,然后将其删除这样:
echo "This is a one line file" > bar.txt
foo bar.txt
rm bar.txt
有没有办法在一行shell脚本中完成所有操作而不创建文件bar.txt
?
答案 0 :(得分:1)
您可以使用过程替换:
foo <(echo "This is a one line file")
答案 1 :(得分:0)
我假设foo不会尝试读取标准输入。如果是这样,作为Cyrus建议的过程替代的替代方案,您也可以
echo "This is a one line file" | foo /dev/stdin
答案 2 :(得分:0)
尝试像这样的命令替换
cat $(ls)
其中,&#39; ls&#39;将被替换为“猫”的论据。执行