ps aux不包裹线

时间:2013-12-08 18:45:06

标签: linux ps

当我执行'ps aux'时,很多行都比我的终端宽度长,而不是换行到下一行。起初我以为这是我的stty设置,但是我注意到像netstat这样的其他命令会在我的终端中换行。我宁愿不被迫使用更少或其他一些寻呼机。

有人知道线条没有包裹的原因吗?以及如何解决?

3 个答案:

答案 0 :(得分:10)

还有另一个简单的解决方案:

echo "$(ps aux)"

paranthesis将在子shell中执行命令,我猜这个命令没有 width 规范,因此不会删除行,至少在我试过的每个shell上都是这样。

使用引号打印使print命令保持Newlines: http://manpages.ubuntu.com/manpages/trusty/en/man1/bash.1.html#contenttoc11

答案 1 :(得分:3)

ps是一个相当古老的命令。它读取终端的宽度并相应地设置格式。您可以使用--cols选项覆盖此内容。

 $ ps aux --cols 100
 ...
 user    29246  8.0 19.7 1748240 763200 ?      Sl   Dec05 364:04 /usr/lib/firefo
 x/firefox
 user    31490  0.0  1.0 235660 39256 ?        Sl   Dec05   0:06 /usr/bin/evince 
 /tmp/space_draft_wo
 ...

然后用更长的行

 $ ps aux --cols 120
 ...
 user    29246  8.0 19.7 1748240 763200 ?      Sl   Dec05 364:04 /usr/lib/firefo
 x/firefox
 user    31490  0.0  1.0 235660 39256 ?        Sl   Dec05   0:06 /usr/bin/evince 
 /tmp/space_draft_work_programme.pdf
 ...

答案 2 :(得分:2)

来自man(1) ps输出修改器

[UN*X]  -w   Wide output.  Use this option twice for unlimited width.
[BSD]   w    Wide output.  Use this option twice for unlimited width.

我倾向于UN * X变体ps -ef并添加,作为助记符,自动换行来制作:     ~ $ ps -efww     但     ~ $ ps auxww 是等价的。