ちょっといくつかのファイルのサイズの足し算が欲しかった、du ではなんか難しかった
ll */*.zip | sed -e 's/ */\t/g' C -f5 | paste -s -d+ B | numfmt --to=iec
ここで「ll」は「ls -l」、「C」は「'| cut'」、「B」は「'| bc'」。
sed のパターン「 's/ */\t/g'」は「 <空白文字> <空白文字>*<アステリスク>」にしています、正規表現の量指定子は零回以上の「*<アステリスク>」を使ったので「 <空白文字>」はふたつ続けています。1回以上の「+<プラス>」の方がいいかとも思ったのですが、シェルでは「\<円マーク>+<プラス>」と書かないと通らなくて返って分かり難くなるかと思った。そうして、cut の区切り文字「 <空白文字>」一つ、に合わせています。
ちなみに「S, P, N」はそれぞれ。sort, perl, nkf にしてるのでエイリアスは使いません。
あと、numfmt のオプション
--to=si --to=iec --to=iec-i
或いは、「none」「auto」、一方「--from=」。
du だと
du */*.zip C -f1 | paste -s -d+ B | numfmt --to=iec
このときサイズ数値は行の最初なので、そのあと空白文字で桁調整してても cut の区切り文字「 <空白文字>」一つにする調整は気にしなくてよい。
まあ、ll でも du でも、その出力を適宜「G='| grep'」とかで拾い直して足し算しましょうという話しです。