はじめに
場合によっては、どのファイルまたはディレクトリがすべてのディスク領域を消費しているかを知る必要があります。さらに、/tmp/または/var/または/home/などのファイルシステム上の特定のディレクトリの場所でそれを見つける必要がある場合があります。
また、不要なジャンクを見つけてハードディスクから解放する必要があります。
このチュートリアルでは、 findを使用してLinuxで最大のファイルとフォルダーを検索する方法について説明します。 およびdu コマンド。
最大のファイルとディレクトリを見つける
/ homeの下にある上位のディレクトリを見つけるには パーティション実行:
[unixcop@rhel-pc ~]$ du -a /home | sort -n -r | head -n 5
2435568 /home/qadry
2435568 /home
1530928 /home/qadry/.cache
846976 /home/qadry/.cache/mozilla/firefox/c2ivcm3y.default-default
846976 /home/qadry/.cache/mozilla/firefox
[unixcop@rhel-pc ~]$
または
# du -a / 2>/dev/null | sort -n -r | head -n 5
上記の2つのコマンドは、 / homeの最大の5つのディレクトリを表示します。 。
最大のディレクトリを見つける
現在の作業ディレクトリで最大のディレクトリを見つけるには、次のコマンドを実行します。
[root@rhel-pc var]# du -hsx * | sort -rh | head -5
3.1G lib
324M cache
38M tmp
28M log
632K snap
[root@rhel-pc var]#
duのオプション コマンド:
h :人間が読める形式でサイズを印刷する
x :異なるファイルシステムのディレクトリをスキップします。
s :各引数の合計のみを表示します(要約)。
並べ替え :テキストファイルの行を並べ替える
r :比較を逆にします。
頭 :ファイルの最初の部分を出力します。
n :行数
特定のディレクトリで最大のディレクトリを見つけるには…たとえば、 / var ディレクトリ、実行:
[root@rhel-pc ~]# du -hs /var | sort -rh | head -5
7.0G /var
[root@rhel-pc ~]#
また、サブディレクトリを含む最大のフォルダ/ファイルを表示するには、次のコマンドを実行します。
[root@rhel-pc var]# du -Sh | sort -rh | head -5
1.1G ./lib/snapd/snaps
553M ./lib/snapd/snap/kde-frameworks-5-core18/32/usr/lib/x86_64-linux-gnu
327M ./lib/snapd/snap/gnome-3-28-1804/161/usr/lib/x86_64-linux-gnu
251M ./lib/snapd/snapshots
240M ./lib/snapd/snap/spotify/46/usr/share/spotify
[root@rhel-pc var]#
上位のファイルサイズのみを確認するには、次を実行します:
[root@rhel-pc var]# find -type f -exec du -Sh {} + | sort -rh | head -n 5
261M ./lib/snapd/snaps/kde-frameworks-5-core18_32.snap
251M ./lib/snapd/snapshots/2_spotify_1.1.55.498.gf9a83c60_46.zip
192M ./lib/rpm/Packages
180M ./lib/snapd/snaps/spotify_46.snap
165M ./lib/snapd/snaps/gnome-3-28-1804_161.snap
[root@rhel-pc var]#
上記のコマンドでは、最大のファイルサイズのみが表示されました。
指定した場所で最大のファイルを検索するには、検索以外のパスを含めます 以下に示すコマンド:
[root@rhel-pc ~]# find /home/qadry/ -type f -exec du -Sh {} + | sort -rh | head -n 5
138M /home/qadry/Downloads/Video/▶ TroubleShootingTools.mp4
102M /home/qadry/.local/share/TelegramDesktop/tupdates/temp/Telegram
102M /home/qadry/Downloads/Telegram/Telegram
53M /home/qadry/xdm-setup-7.2.11.tar.xz
53M /home/qadry/install.sh
[root@rhel-pc ~]#
上記のコマンドは、 / home / qadryからの最大のファイルを表示します 場所。
findコマンドを使用してディレクトリとそのサブディレクトリで最大のファイルを検索します
次のGNU/findコマンドを入力します。
## Warning: only works with GNU find ##
# find /path/to/dir/ -printf '%s %p\n'| sort -nr | head -5 #for a specified location
# find . -printf '%s %p\n'| sort -nr | head -5
例:
指定された場所: (例: / var )
[root@rhel-pc ]# find /var/ -printf '%s %p\n'| sort -nr | head -5
273375232 /var/lib/snapd/snaps/kde-frameworks-5-core18_32.snap
273375232 /var/lib/snapd/cache/127632cc622891a2cd69da70616530d2a15cccf0a9adb50f7d2dca3c1bfc56c0cc9052c39a8b22cadc619a43fd87048f
262885666 /var/lib/snapd/snapshots/2_spotify_1.1.55.498.gf9a83c60_46.zip
201011200 /var/lib/rpm/Packages
188289024 /var/lib/snapd/snaps/spotify_46.snap
または
現在の作業ディレクトリ:
[root@rhel-pc var]# find . -printf '%s %p\n'| sort -nr | head -5
273375232 ./lib/snapd/snaps/kde-frameworks-5-core18_32.snap
273375232 ./lib/snapd/cache/127632cc622891a2cd69da70616530d2a15cccf0a9adb50f7d2dca3c1bfc56c0cc9052c39a8b22cadc619a43fd87048f
262885666 ./lib/snapd/snapshots/2_spotify_1.1.55.498.gf9a83c60_46.zip
201011200 ./lib/rpm/Packages
188289024 ./lib/snapd/snaps/spotify_46.snap
結論
du / findと他のコマンドの組み合わせを使用して、Linuxで最大または最大のディレクトリ/ファイルを検索、検索、および一覧表示する方法を学習しました。