linux ps aux不换行[已关闭]

nle07wnf  于 2022-12-18  发布在  Linux
关注(0)|答案(4)|浏览(307)

**已关闭。**此问题为not about programming or software development。当前不接受答案。

此问题似乎与a specific programming problem, a software algorithm, or software tools primarily used by programmers无关。如果您认为此问题与another Stack Exchange site的主题有关,您可以留下评论,说明在何处可以回答此问题。
4天前关闭。
社区在4天前审查了是否重新讨论此问题,并将其关闭:
原始关闭原因未解决
Improve this question
当我执行“ps aux”时,很多行比我的终端的宽度长,并且没有换行到下一行。起初我以为是我的stty设置,但我注意到其他命令如netstat在我的终端中换行。我不希望被迫使用更少或其他分页器。
有谁知道为什么线没有缠绕?以及如何修复?

mznpcxlj

mznpcxlj1#

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

echo "$(ps aux)"

括号将在一个子shell中执行命令,我猜这个子shell没有width规范,因此不会剪切行,至少在我尝试的每个shell上都是这样。
使用引号打印时,print命令将保留换行符:http://manpages.ubuntu.com/manpages/trusty/en/man1/bash.1.html#contenttoc11

mbskvtky

mbskvtky2#

来自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是等效的。

2wnc66cl

2wnc66cl3#

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
 ...
9cbw7uwe

9cbw7uwe4#

我知道您提到过将其管道化到更少,但我仍然认为管道化到moreless仍然是最简单的解决方案,无论您在哪里都可以负担得起(例如,在交互式会话中)。

相关问题