ls-lS コマンドなしでパイプを使用したリストのソート

ls-lS コマンドなしでパイプを使用したリストのソート

Linuxプログラム「sort」は、ファイルや他のプログラムの出力をソートできます。 sort を使用して ls コマンドの出力を 1) ファイル名 2) ファイルサイズでソートする方法です。

"ls"コマンドにこれを実行するためのいくつかのオプションがあることがわかりましたが、次のソートを試してみました。 「ls」コマンドはサイズを表示し、「sort」コマンドオプションはソートを制御し、パイプを使用しました。

この目標をどのように達成できますか?

ベストアンサー1

そしてGNUの実装stat1、ファイル名に改行文字が含まれておらず、-現在のディレクトリから呼び出されるファイルがないとします。

stat -c '%s %n' -- * | sort -t' ' -k1,1n -k2

ソートキー:

  • まず、フィールド1(サイズ)に基づいて数値順(昇順)でソートします。
  • 次のフィールド2 - 終了(ファイル名)語彙(昇順)

¹statこれは標準コマンドではなく、互換性のない実装が複数あることに注意してください。

おすすめ記事