すべてのユーザーに対して50個の大容量ファイルの所有者とフルパスを取得するには?

すべてのユーザーに対して50個の大容量ファイルの所有者とフルパスを取得するには?

次のコマンドは、サブフォルダに関係なく最初の50ファイルを一覧表示します。

$ls -lR /root/home | sort +4 -5nr | head -50

現在の結果:

-rw-r--r--    1 john   dpst      192954384 Nov  7 07:36 filenxx1.gz
-rw-rw----    1 paul   dpst      192188934 Nov 18 10:10 filenyyy1.mov

私の新しい要件は、「所有者」と「フルパス」を取得することです。

予想される結果:

john  /home/dev/proj/filenxx1.gz
paul  /home/dev/proj/filenyyy1.mov

50個のファイルのリストを繰り返し、「find」またはunixのコマンドを使用して所有者とフルパスを取得する方法を教えてください。

ベストアンサー1

find /root/home -printf "%s\t%u\t%p\n" | sort -rn | head -50 | cut -f2-

findサイズ、所有者、フルパスを出力してから、cut不要な最初のフィールドを削除してください。

おすすめ記事