我需要script.sh
,这会创建文件f1.txt
和f2.txt
,其内容已发送到stdin。例如:
echo ABRACODABRA | script.sh
...应使用内容f1.txt
创建文件f2.txt
和ABRACODABRA
。
我该怎么做?
请提供script.sh
的遗体!
答案 0 :(得分:8)
您需要tee
。
$ echo 'foo' | tee f1.txt f2.txt
或
$ echo 'foo' | tee f1.txt > f2.txt
将附加输出抑制为stdout。
我猜你真正的问题可能是如何从脚本中的输入读取。在这种情况下,请参阅this question。这会给你类似的东西
while read input; do
echo $input | tee -a f1.txt > f2.txt
done
答案 1 :(得分:1)
您的脚本可能如下所示:
#!/bin/bash
read msg
echo $msg > f1.txt
echo $msg > f2.txt
exit 0