Linux 中查找大文件兩種姿勢

來自:入門小站
使用find命令查找大文件
find命令是Linux系統(tǒng)管理員工具庫中最強(qiáng)大的工具之一。它允許你根據(jù)不同的標(biāo)準(zhǔn)(包括文件大?。┧阉魑募湍夸?。
例如,如果在當(dāng)前工作目錄中要搜索大小超過100MB的文件,請使用以下命令:
sudo?find?.?-xdev?-type?f?-size?+100M
.?代表當(dāng)前目錄。如要搜索其它目錄替換.為要搜索目錄的路徑。
輸出將顯示的文件列表,不會包含其它信息。
/var/lib/libvirt/images/centos-7-desktop_default.img
/var/lib/libvirt/images/bionic64_default.img
/var/lib/libvirt/images/winqcow2
/var/lib/libvirt/images/debian-9_default.img
/var/lib/libvirt/images/ubuntu-18-04-desktop_default.img
/var/lib/libvirt/images/centos-7_default.img
find命令還可以與其他命令結(jié)合使用,例如ls或sort對這些文件執(zhí)行操作。
在下面的示例中,我們傳遞find命令的輸出到ls?,ls將打印已找到的每個文件的大小,然后將將輸出傳遞給sort命令,以根據(jù)文件大小的第5列對其進(jìn)行排序。
find?.?-xdev?-type?f?-size?+100M?-print?|?xargs?ls?-lh?|?sort?-k5,5?-h?-r
輸出像這樣:
-rw-------??1?root???root?40967M?Jan??5?14:12?/var/lib/libvirt/images/winqcow2
-rw-------??1?root???root??3725M?Jan??7?22:12?/var/lib/libvirt/images/debian-9_default.img
-rw-------??1?root???root??1524M?Dec?30?07:46?/var/lib/libvirt/images/centos-7-desktop_default.img
-rw-------??1?root???root???999M?Jan??5?14:43?/var/lib/libvirt/images/ubuntu-18-04-desktop_default.img
-rw-------??1?root???root???562M?Dec?31?07:38?/var/lib/libvirt/images/centos-7_default.img
-rw-------??1?root???root???378M?Jan??7?22:26?/var/lib/libvirt/images/bionic64_default.img
如果輸出包含大量信息,你可以使用該head命令僅打印前10行:
find?.?-xdev?-type?f?-size?+100M?-print?|?xargs?ls?-lh?|?sort?-k5,5?-h?-r?|?head
分解命令:find . -xdev -type f -size +100M -print
僅搜索當(dāng)前工作目錄( .)中的 文件(-type f),大于100MB(-size +100M),不要查找其他文件系統(tǒng)上的目錄(-xdev)并在標(biāo)準(zhǔn)輸出上打印完整文件名,然后是新的一行(-print) 。xargs ls -lh-?find命令的輸出通過管道xargs執(zhí)行,ls -lh命令將以長列表可讀格式打印輸出。sort -k5,5 -h -r- 基于第5列(-k5,5)對行進(jìn)行排序,以可讀格式(-h)的值并反轉(zhuǎn)結(jié)果(-r)。head?:僅打印管道輸出的前10行。
find命令帶有許多強(qiáng)大的選項(xiàng)。例如,你可以搜索超過多少天的大文件,具有特定擴(kuò)展名的大文件或?qū)儆谔囟ㄓ脩舻拇笪募?/p>
使用du命令查找大文件和目錄
du命令用于估計(jì)文件空間使用情況,對于查找占用大量磁盤空間的目錄和文件特別有用。
以下命令將打印最大的文件和目錄:
du?-ahx?.?|?sort?-rh?|?head?-5
第一列包含文件大小,第二列包含文件名:
55G?.
24G?./.vagrant.d/boxes
24G?./.vagrant.d
13G?./Projects
2G?./.minikube
命令說明:
du -ahx .:估算當(dāng)前工作目錄(.)中的磁盤空間使用情況,包括文件和目錄(a),以比較接近人的常見可讀格式打印大?。?code style="margin-right: 2px;margin-left: 2px;padding: 2px 4px;outline: 0px;font-size: 14px;border-radius: 4px;color: rgb(30, 107, 184);background-color: rgba(27, 31, 35, 0.05);font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;word-break: break-all;">h)并跳過不同文件系統(tǒng)上的目錄(x)。sort -rh:通過可讀格式(-h)的值并反轉(zhuǎn)結(jié)果(-r)來對輸出行進(jìn)行排序。head -5?:僅打印管道輸出的前5行。
有收獲,點(diǎn)個在看?
評論
圖片
表情


