• ベストアンサー

[HP-UX 11.23] du コマンドの出力結果をソート

よろしくお願いします。 QNo.4011758「HP-UX 11.23 におけるディスク使用率確認方法」 でアドバイスいただき、duコマンドの存在を知りました。 manやWebサイトで使い方を確認中です。 <質問> duコマンドの出力結果を使用量でソートする方法はありますでしょうか? どうぞよろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
noname#96023
noname#96023
回答No.3

パイプでsortに投げる du -ks * | sort -k 2 duの出力フィールドとsortのオプションをきちんと覚えていないので後は調べてください

nao-k
質問者

お礼

super-dog さん、前の質問に引き続き アドバイスありがとうございます。 参考にさせていただきます。

その他の回答 (4)

noname#96023
noname#96023
回答No.5

#4さんのスクリプトですが FreeBSDのshの実態はashで変数の扱いが違うはずなんで HP-UXのPOSIX-shじゃ動かないかもしれませんね。 (私も詳しくないので正確な話じゃないですが)

nao-k
質問者

お礼

参考意見ありがとうございます。 何度もご支援くださり助かりました。

  • iriyak
  • ベストアンサー率48% (40/82)
回答No.4

エラーメッセージを添付してくれれば原因の特定のサポートができるかもしれません。(全角文字は半角文字に変換済み、ですよね) (代替案) フォーマットエラーの可能性を排除するために 3 行にまとめておきました。お試しください。 #!/bin/sh echo " kbytes blocks file" du -s $* | awk '{ vol[$2] = $1 } END { for(dir in vol) { printf("%10d (%7d) %s\n", int(vol[dir]), vol[dir], dir); } } ' | sort -rn (出力例) FreeBSD 5.4-RELEASE-p4 での実行例です。(上記を du+ ファイルにまとめました) zebra[Sun]$ ./tmp/du+ *   kbytes  blocks  file   133710 ( 133710) tmp   105280 ( 105280) public_html    85856 ( 85856) src    69020 ( 69020) bkup    27196 ( 27196) share    17606 ( 17606) lib    12200 ( 12200) data    11988 ( 11988) log    2422 (  2422) bin    1226 (  1226) site    1166 (  1166) info    1032 (  1032) doc     506 (  506) man

nao-k
質問者

補足

ご回答ありがとうございます。 何度もすみません。 エラーとなり、やはり動きませんでした。 しかし、他でいただいたご回答により目的を達成しましたので、 この件はここまでとしたいと思います。 また何かありましたらよろしくお願いします。

  • iriyak
  • ベストアンサー率48% (40/82)
回答No.2

こんにちは。 昔のバージョンでの動作実績しかありませんが、ご参考になさってください。(表示上、半角スペース2個を全角スペースに置き換えました。コピー&ペーストする際にご注意ください) #!/bin/sh echo "  kbytes  blocks  file" du -s $* | awk ' { vol[$2] = $1 } END   {     for(dir in vol) {         printf("%10d (%7d) %s\n",             int(vol[dir]),             vol[dir],             dir);     } } ' | sort -rn

nao-k
質問者

補足

iriyak さん、ご回答ありがとうございます。 試してみたいのですが、実行方法を教えてください。 そのまま実行したら8行目以降でエラーとなりました。

  • koko_u_
  • ベストアンサー率18% (459/2509)
回答No.1

>duコマンドの出力結果を使用量でソートする方法はありますでしょうか? そのまま sort コマンドに通せばいいと思いますけど。 du -d 1 | sort -n -k 1 な風で。

nao-k
質問者

お礼

koko_u_ さん、アドバイスありがとうございます。 参考にさせていただきます。

関連するQ&A