操作系统 
首页 > 操作系统 > 浏览文章

CentOS下找出大文件命令的方法

(编辑:jimmy 日期: 2024/10/3 浏览:3 次 )

Q. 如何在目录中找出所有大文件?

A.

1) 句法 for RedHat / CentOS / Fedora Linux

find {/path/to/directory/} -type f -size +{size-in-kb}k -exec ls -lh {} \; | awk ‘{ print $9 “: ” $5 }’

实例:

查找当前目录下大于50MB的文件

$ find . -type f -size +50000k -exec ls -lh {} \; | awk ‘{ print $9 “: ” $5 }’

查找目录/var/log大于100MB的文件

# find /var/log -type f -size +100000k -exec ls -lh {} \; | awk ‘{ print $9 “: ” $5 }’

2)句法 for Debian / Ubuntu Linux

find {/path/to/directory} -type f -size +{file-size-in-kb}k -exec ls -lh {} \; | awk ‘{ print $8 “: ” $5 }’

实例:

查找当前目录下大于10MB的文件

$ find . -type f -size +10000k -exec ls -lh {} \; | awk ‘{ print $8 “: ” $5 }’

Sample output:

./.kde/share/apps/akregator/Archive/http___blogs.msdn.com_MainFeed.aspx?Type=AllBlogs.mk4: 91M

./out/out.tar.gz: 828M

./.cache/tracker/file-meta.db: 101M

./ubuntu-8.04-desktop-i386.iso: 700M

./vivek/out/mp3/Eric: 230M

列出家目录下文件大小小于500b的文件:

$ find $HOME -size -500b

OR

$ find ~ -size -500b

列出根目录下大小是20 512-byte blocks的文件:

# find / -size 20

Perl 技巧: 显示大文件

依据文件大小从小到大显示当前目录下每个目录的占用的情况(注:星号和星号的长度)

du -k | sort -n | perl -ne ‘if ( /^(\d+)\s+(.*$)/){$l=log($1+.1);$m=int($l/log(1024)); printf  (“%6.1f\t%s\t%25s  %s\n”,($1/(2**(10*$m))),((“K”,”M”,”G”,”T”,”P”)[$m]),”*”x (1.5*$l),$2);}’

ls 命令:在目录中找出最大的文件

同样你也能使用ls命令:

$ ls -lS

$ ls -lS | less

$ ls -lS | head +10

ls 命令:在目录中找出最小的文件

如下所示:

$ ls -lSr

$ ls -lSr | less

$ ls -lSr | tail -10

其它供鉴:

find . -xdev -printf ‘%s %p\n’ |sort -nr|head -20

du -xak .|sort -n|tail -50

上一篇:CentOS下一张网卡绑定多个IP的方法
下一篇:centos快速查找指定类型文件并删除的方法
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。