回答:
top -bcn1 -w512
エレガントなソリューションは、オプションを使用することです。マニュアルページによると、最大幅は512文字なので、それを超えるものには別の解決策が必要になります。おそらく、コマンドの完全な長さも表示したいので、オプションを使用してください。「バッチモード」で実行する必要があります。そうでない場合は、「+」を使用してコマンドをカットし続けます。バッチモードは、毎秒すべてのジョブを印刷するため混乱を招きます。そのため、このオプションを使用して1つのインスタンスのみを印刷できます。-w [number]
-c
top
-b
-n1
詳細については、manトップページを参照してください。
top
。
コマンドフィールドは、読みやすくするためにデフォルトで自動的に切り捨てられます。
実行する必要があります
top -c
完全なコマンドを表示するには、コンソールウィンドウの機能に応じて、右にスクロールして完全なコマンドを表示できます。
Daniel Arndtが言ったように、topの代わりにhtopを使用することもできます。現在、すべてのディストリビューションで利用可能であり、より優れた数値を提供しています(特にメモリ使用量)
また、端末の色に制限されている場合でも、はるかに使いやすく、見やすくなっています。たとえば、完全なコマンドを表示するために右にスクロールしたり、単純なF9でプロセスを強制終了したりできます。「t」キーで完全なツリーを表示することもできます。
htop
確かに素晴らしいプログラムですが、質問はtopの出力に関するものでした。トピックのままにしてください。
これはハックですが、topを起動する前に$ COLUMNSおよび$ LINESシェル変数を調整することで動作を変更できます。
export COLUMNS=$((COLUMNS*2))
export LINES=$((LINES/2))
top
これにより、シェルに書き込む列が2倍になる(これを相殺するために行が半分になる)ようになります。bashを使用している場合は、shopt -s checkwinsize
事前に実行して、topが終了するとそれらの値を再計算するように指示できます。それ以外の場合は、これらの値をバックアップ/復元する(またはウィンドウのサイズを変更する)だけです。
たとえば、top -b -n 1およびpsを含むバッチ画面を設計できます。
while (true)
do
clear
top -b -n 1
ps
sleep 5
done
これは表示を処理します: