sh 脚本中未找到临时文件

sh 脚本中未找到临时文件

首先看一下这个脚本:

touch test.txt
touch loc

echo "result1" > loc
loc >> test.txt

echo "result2" > loc
loc >> test.txt

rm loc

我创建两个文件。其中之一loc是临时的,我尝试写入它,但收到以下错误消息:

5: script.sh: loc: not found
8: script.sh: loc: not found

我怎样才能让它发挥作用?

答案1

loc不是命令。您需要使用cat loc >> test.txt将其附加到text.txt。否则你也可以完全避免临时文件:

echo "result1" >> test.txt
echo "result2" >> test.txt

注意,touch test.txt好像也没用。

答案2

这将创建 test.txt

echo "result1" |  tee -a  test.txt
echo "result2" |  tee -a  test.txt

或者一步使用它

echo "result1" && echo "result2" |  tee -a  test.txt

答案3

重定向运算符期望将字符串或字符流作为输入端,并在另一端输入文件。因此,您需要使用cat命令首先读取文件,然后将流字符重定向到输出文件。

touch test.txt
touch loc
echo "result1" > loc
cat loc >> test.txt
echo "result2" > loc
cat loc >> test.txt
rm loc

相关内容