GNU/Linux >> Linux の 問題 >  >> Linux

Linuxコマンドラインで最大のファイルとフォルダを見つける

これは、du、sort、およびheadに既に精通している可能性のあるいくつかのコマンドを使用して、Linuxマシン上で最大のファイルを見つける方法を示す簡単なチュートリアルです。

簡単な要約は次のとおりです:

現在のディレクトリで最大の10個のフォルダを見つけるには:

du -h | sort -hr | head -n 10

現在のディレクトリで最大の10個のファイルとフォルダを見つけるには:

du -ah | sort -hr | head -n 10

これらのコマンドの詳細な説明については、記事の残りの部分をお読みください。

Linuxで最大のフォルダを見つける方法

duコマンドは、ディスク使用量を取得するために使用されます。並べ替えコマンドは、要件に従ってデータを並べ替えます。 headコマンドは、テキスト入力ソースの一番上の行を表示します。

これは、Linuxコマンドラインで最大のファイルとディレクトリを取得するための1つの組み合わせにすぎません。同じ結果を達成するには、他にもいくつかの方法があります。

これらの3つのコマンドをオプションなしで一緒に実行するとどうなりますか?出力はおそらくあまり役​​に立たないでしょう。

これらのコマンドを実行すると、duで指定されていない限り、現在の作業ディレクトリをソースファイルとして使用してすべてが自動的に実行されます。

オプションなしで並べ替えると、アイテムが番号順に並べられますが、この動作は少し奇妙です。 2> 0であるため、100は12未満と見なされます。これは、私たちが望んでいることではありません。

ここに向かうと、デフォルトで最初の10個のアイテムが表示されます。分析するディレクトリに応じて、これを調整して大きなファイルをすばやく見つけることができます。

[email protected]:~$ du | sort | head
100    ./.local/share/evolution/addressbook
108    ./.mozilla/firefox/jwqwiz97.default-release/datareporting
112    ./.local/share/gvfs-metadata
12    ./.cache/fontconfig
12    ./.cache/gnome-software/screenshots/112x63
12    ./.cache/thumbnails/fail
12    ./.config/dconf
12    ./.config/evolution
12    ./.config/gnome-control-center/backgrounds
12    ./.config/ibus
オプションの追加

それでは、より一般的なオプションを見てみましょう。

-nを追加する 並べ替えコマンドは、アイテムが数値で並べ替えられることを意味します。 -rを追加する 結果が逆になることを意味します。これは、最大数を検索するときに必要なものです。

-5も追加します ヘッドのデフォルトよりもさらに結果を制限します。この値は、システムについて知っていることに基づいて決定する必要があります。

値を10より大きい数に拡張するか、フィルタリングしようとしている大きなファイルが多数ある場合は、値を完全に省略します。それ以外の場合は、実行して複数のファイルを削除しても、スペースの問題が発生する可能性があります。

さて、すべてをまとめて、何が起こるか見てみましょう。

[email protected]:~$ du | sort -nr | head -5
1865396    .
1769532    ./Documents
76552    ./.cache
64852    ./.cache/mozilla
64848    ./.cache/mozilla/firefox

より良いのは、最大のファイルがどこにあるかをすばやく確認できることです。しかし、あなたはもっとうまくやることができます。さらにいくつかのオプションを使用してクリーンアップしましょう。

人間が読める形式の出力

特定のコマンドの人間によるオプションは、私たちに馴染みのある方法で数字を表示するのに役立ちます。それをduコマンドに追加してみましょう。

[email protected]:~$ du -h | sort -nr | head -5
980K    ./.local/share/app-info
976K    ./.local/share/app-info/xmls
824K    ./.cache/thumbnails
808K    ./.cache/thumbnails/large
804K    ./.local/share/tracker
修正されたHuman-Readble出力

ちょっと待ってください…これらの数字は意味がありません。いいえ、duコマンドのコンテンツを人間が読める形式に変更しただけなので、そうではありません。ソートには、-hを使用した人間が読める数値ソート用の独自の組み込み関数があります。目的の出力を得るには、両方を使用する必要があります。 Linuxでは、この種の問題が頻繁に発生する可能性があります。

コマンドを特定の方法で使用する前に、実験して結果が「意味をなす」ことを確認することが重要です。

もう一度試してみましょう。

[email protected]:~$ du -h | sort -hr | head -5
1.8G    .
1.7G    ./Documents
75M    ./.cache
64M    ./.cache/mozilla/firefox/jwqwiz97.default-release
64M    ./.cache/mozilla/firefox

それはもっと似ています。

最大のファイルはどこにありますか?

出力から、Documentsフォルダーにいくつかの大きなファイルが含まれていることがわかりますが、そのフォルダーに切り替えてコマンドを再度実行すると、最大のファイルは取得されません。あなたはこれを手に入れます:

[email protected]:~/Documents$ du -h | sort -hr | head -5
1.7G    .

これは、あなたがすでに知っていることを私たちに伝えているだけです。 .と呼ばれる現在のディレクトリ 、1.7G相当のファイルがあります。単一の異常に大きなファイルを見つけようとしている場合、これは役に立ちません。

このタスクでは、duに別のフラグを追加する必要があります。オプション-aを使用すると、探している出力を取得できます。試してみましょう。

[email protected]:~/Documents$ du -ah | sort -hr | head -5
1.7G    .
1.1G    ./1gig-file.file
699M    ./doc.tar
2.9M    ./photo-of-woman-wearing-turtleneck-top-2777898.jpg
1.4M    ./semi-opened-laptop-computer-turned-on-on-table-2047905.jpg

結論

Linuxで大きなファイルを見つけるためのこのガイドを楽しんでいましたか?これらのヒントのすべてがあなたに何か新しいことを教えてくれたことを願っています。

このガイドが気に入ったら、ソーシャルメディアで共有してください。コメントや質問がある場合は、以下に残してください。


Linux
  1. xclipを使用してLinuxコマンドラインでコピーして貼り付けます

  2. Linuxコマンドラインで牛を飼う

  3. Linuxコマンドラインにアクセスしてください

  1. findコマンドを使用してLinux上のファイルとディレクトリを検索します

  2. Linuxでコマンドラインからファイルを分割して結合する方法

  3. Linuxのコマンドラインからファイルをダウンロードする

  1. Linuxターミナルでファイルとフォルダを削除します

  2. Linuxコマンドラインに関する8つのヒント

  3. コマンドラインでのファイルの検索(ハウツー)