我正在编写一个shell脚本,其中有一个循环。当循环经历不同的值时,将赋值给变量i
。我希望将每次循环运行时i
得到的所有值都回显到文本文件中。
我现在正在做的是:
echo " $i " > fail
但只能获得分配给i
的最后一个值。
答案 0 :(得分:2)
不是将单个echo
重定向到您的文件,而是将整个循环重定向到该文件。这样效率要高得多,并且在循环启动时只截断文件一次。
for i in "${whatever[@]}"; do
echo " $i"
done >fail
如果您根本不想截断文件,当然可以在同一位置使用>>fail
。
答案 1 :(得分:1)
放
echo " $i " >> fail
循环中的。
答案 2 :(得分:1)
如果您使用
echo " $i" >> fail
它会将其附加到文件中。
答案 3 :(得分:0)
echo " $i" > fail
将写入文件(覆盖)
echo " $i" >> fail
将附加到现有文件