【问题标题】:Shell Scripting: read input from command outputShell 脚本:从命令输出中读取输入
【发布时间】:2014-03-07 20:11:29
【问题描述】:

为什么下面的代码只给出了 ps.out 中 ps -eaf 输出的第一行?

while read line; 
do
   echo $line>ps.out; 
done < <(/bin/ps -eaf)

【问题讨论】:

    标签: shell scripting-language


    【解决方案1】:

    您每次都在截断文件,因此您只能得到最后一行。您可能想要&gt;&gt; 而不是&gt;

    【讨论】:

    • 为愚蠢的错误道歉。应该是>>谢谢!
    【解决方案2】:

    或者通过在“完成”之后放置“>ps.out”来重定向整个循环输出。

    【讨论】: