最近このコマンドを試しましたが、ps
時には非常に長いパスが次の行(または2行)に渡り、読みにくくなることがありました。ps
出力を別のプログラムにパイプして出力をx
文字数に制限したいと思います。
これまでに行った作業は次のとおりです。しかし、うまく動作しません。
ps aux | cut -c1-$(stty size | cut -d' ' -f2)
$(stty size | cut -d' ' -f2)
これは167と評価されますが、有効な入力ではないようですcut
。
Bashでこのタイプの構文を操作する方法はありますか?
ベストアンサー1
一部のシェルはzsh
自動的にbash
変数を端末の幅にmksh
設定するため、ここで呼び出す必要はありません。$COLUMNS
stty
私が試したすべての実装は、それps
自体で端末の幅を照会するための非標準(BSDタイプ)構文をサポートしています。そうではないことに驚きました。私が見るものは何ですかCOLUMNS
環境変数がありますが。
だからあなたはこれを行うことができます:
export COLUMNS; ps aux
そうでなければ、
ps aux | cut -c"1-$COLUMNS"
端末にラップしないように指示することもできます。
tput rmam
ps aux