du タブの配置を修正するにはどうすればいいですか?

du タブの配置を修正するにはどうすればいいですか?

du出力を整然とした列で取得したいと思います。

私が得たものは次のとおりです:

du -sh * | sort -hr
----
48M app
11M lib
6.7M    image.jpg
1.1M    image2.jpg
488K    code.c
488K    code.py
72K doc.txt
16K notes.txt
4.0K    README.md

望ましい出力はls -lh出力に似ています。

答え1

duサイズ列と名前列の間に <Tab> 文字を出力します。端末/コンソールは通常、<Tab> 文字を 8 の倍数の次の文字位置への移動として解釈します。そのため、duサイズ値が 8 文字以上でない限り、通常は整然とした列で出力されますが、この-hオプションではそれがほぼ不可能です。

コンソールは、<Tab> 文字を 4 の倍数の次の文字位置への移動として解釈するように設定されているようです。したがって、(ある意味で)「正しい」答えは、コンソールを修正して、タブを通常の方法で処理することです。

ターミナルでタブ ストップを設定する方法がわからない場合は、出力をパイプする方法もありますexpand

du -sh * | sort -hr | expand

関連情報