ps -o 列幅を増やす

ps -o 列幅を増やす

私がコマンドを実行すると

ps -e -o cmd,stime,etime=

列が切り捨てcmdられるため、cmdパスも切り捨てられます。すべてのテキストが表示されるように列幅の書式をどのように指定しますか?

答え1

GNU/Linux では、次のように列幅を設定できます。

ps -e -o cmd:50,stime,etime=

~から参考(1)マニュアルページ:

-o形式

カスタム形式。形式は、個々の出力列を指定する方法を提供する空白またはカンマ区切りリストの形式の単一パラメータです。認識されるキーワードは、以下の標準書式指定子のセクションで説明されています。必要に応じてヘッダーの名前を変更できます(ps -o pid、ruser = RealUser -o comm = Command)。すべての列ヘッダーが空の場合(ps -o pid = -o comm =)、ヘッダー行は出力されません。広いヘッダーの場合、必要に応じて列の幅が広がります。これは、WCHAN(ps -o pid、wchan = WIDE-WCHAN-COLUMN -o comm)などの列を広げるために使用できます。明示的な幅制御も提供されます(ps opid、wchan:42、cmd)。ps -o pid=X,comm=Y の動作は特性によって異なります。出力は、「X、comm = Y」という名前の列の1つ、または「X」と「Y」という名前の2列です。疑わしい場合は、複数の -o オプションを使用してください。必要に応じて、PS_FORMAT環境変数を使用してデフォルト値を指定します。 DefSysVとDefBSDは、デフォルトのUNIXまたはBSD列を選択するために使用できるマクロです。

答え2

Ubuntu 18.04では、次のコマンドを実行してください。

ps -eo comm:25,pid

COMMAND 列を広げますが、コマンドが 25 文字より短い場合でも切り捨てを停止しません。

gsd-printer                2384 
gvfsd-trash                2397
evolution-calen            2401
ibus-engine-sim            2429
dconf-service              2436
evolution-calen            2445
evolution-addre            2457
evolution-addre            2468
fwupd                      2488

関連情報