Ansatzの備忘録

勉強したことあるいはふと思い立ったこと

シェルワンライナー160本ノック問題105

問題105 ディスク使用量の集計

duを実行してディスク使用量が大きい順に並べなおす問題だった。-hを使うことに気が付いたのはよかったが肝心の並べ替えをし忘れていた。このやるべきことをすっぽかす悪い癖をどうにかしたいが、なかなかどうにもならない。

解答例は

du -s /usr/* | sort -nr | awk '{print $2}' | xargs du -sh

となる。まずduで一度数値を接頭辞なしで出力した後、sortしてからawkディレクトリだけ抽出し再度duで-hを用いて接頭辞付きで大きい順に出力した。sort の-n は文字列を数値として扱い小さい順に並べるオプションで、-rをつけると逆順になる。