web-dev-qa-db-ja.com

単語「合計」なしで「du -c」の出力を取得するにはどうすればよいですか?

ディレクトリとその中のすべてのディレクトリの合計サイズを取得したい。

コマンドを使用しています

du -h -c "$input_variable" | grep total

結果とWord totalを出力します。 Wordなしで結果を取得するにはどうすればよいですかtotal

5
user1555314

ちょうど1つ file"$input_variable"を渡しているので、-sの代わりに-cを使用してgrepを取り除くことができます。

-s
デフォルトの出力の代わりに、指定された各ファイルの合計のみを報告します。

ソース

ドキュメントを正しく読んでいる場合、duは出力でスペース文字を使用して、パス名とサイズを区切る必要があります。ただし、一般的な実装ではタブを使用します。 awkとデフォルトのフィールドセパレーターは、どちらの場合も最初のフィールドを分離できるはずです。

du -hs "$input_variable" | awk '{print $1}'

ノート:

  • ソリューションはWord totalに依存しないため、ローカライズされたduもサポートされる可能性があります。
  • -sは移植可能なオプションですが、-cはそうではありません(使用した-hも移植できません)。
8

GNU du:

du -sh "$input_variable" | awk '{print $1}'
3
Cyrus

sedにパイプします:| sed 's/\ttotal//g'

2
S.S. Anne