Terminal

ps -o 呼叫中的完整命令行

  • January 3, 2022

在 Ubuntu 20.04.3 上,呼叫ps -e -o args,pid,etime,%cpu,%mem --forest | egrep "firefox|PID" | grep -v grep給我以下結果:

COMMAND                         PID     ELAPSED %CPU %MEM
\_ /usr/lib/firefox/firefo    5730    01:58:40 20.8  4.9
|   \_ /usr/lib/firefox/fi    5811    01:58:39  0.0  0.2
|   \_ /usr/lib/firefox/fi    5841    01:58:39  0.1  0.7
|   \_ /usr/lib/firefox/fi    5895    01:58:39  0.0  0.9
|   \_ /usr/lib/firefox/fi    5926    01:58:39  4.3  2.0
|   \_ /usr/lib/firefox/fi    6000    01:58:38 21.7  2.0
|   \_ /usr/lib/firefox/fi    6094    01:58:32  4.2  0.3
|   \_ /usr/lib/firefox/fi    7004    01:54:00  1.4  2.0
|   \_ /usr/lib/firefox/fi    7648    01:37:06  0.8  1.9
|   \_ /usr/lib/firefox/fi    8351    01:31:35  1.0  1.0
|   \_ /usr/lib/firefox/fi   12159       45:04  3.5  2.3
|   \_ /usr/lib/firefox/fi   15712       03:56  2.0  0.9
|   \_ /usr/lib/firefox/fi   15833       03:25  1.4  0.9
|   \_ /usr/lib/firefox/fi   16878       02:39  0.0  0.4
|   \_ /usr/lib/firefox/fi   16924       02:30  0.0  0.4
|   \_ /usr/lib/firefox/fi   16962       02:24  0.0  0.4

這是我想要的,除了縮短的命令行。添加ww到 ps ( ps -eww) 不會更改輸出。 ps auxww --forest | egrep "firefox|PID" | grep -v grep有效,但採用 BSD 風格,而不是我想要的列。

要輸出完整的命令行,無論長度如何,都args需要排在最後:

ps -e -o pid,etime,%cpu,%mem,args --forest

如果你想先保留args,你可以指定一個具有你想要的寬度的替代標題名稱——但這仍然會截斷比標題名稱長的命令行:

ps -e -o args=args-----------------------------------------------------,pid,etime,%cpu,%mem --forest

引用自:https://unix.stackexchange.com/questions/684836