内部に多くのサブフォルダがあるフォルダがあります。すべてのサブフォルダ内のすべてのファイルを一覧表示したいのですが、ファイルをサブフォルダ名でソートしたいと思います。現在、ディレクトリ内のファイルには興味がありません。
現在、このコマンドを使用していますが、必要な正しいファイル名とパス出力を取得できますが、サブフォルダーごとにソートされません。
find -type f
前のデータ:
8585/file10.txt
8585/file83.txt
34032/file130.txt
10/file5400.txt
希望のソート出力:
10/file5400.txt
8585/file83.txt
8585/file10.txt
34032/file130.txt
助けてくれてありがとう!
答え1
find
パイプからデータを転送しますsort
。デフォルト設定はsort
ロケールによって異なり、通常は英数字です。希望のソート順序が提供されない場合そしてあなたはGNUを持っています。私の例のフラグをsort
試してみてください。-V
find -type f | sort -V
man sort
詳細については、次を参照してください。
答え2
読んだらマニュアルページfind
、maxlengthオプションがあることがわかります。しかし、もしあなたが
ls */* | sort