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

相關內容