linux 怎么查看一个文件的大小啊?用M为单位?

说白了,用ls -lh看文件大小比ls直观多了,单位直接给你转成MB、KB了。
这事复杂在几个点上:先用ls -lh看个1 GB的日志文件,输出是1 .2 M,不用手算;另外,-l长格式会给你文件所有者和修改时间,这个去年我们跑那个监控系统项目时差点因为没注意时间戳搞混日志;还有个细节挺关键的,比如软链接,ls -lh显示的是它指向文件的大小,不是软链接本身占多少空间,这点很多人没注意。
说实话挺坑的。
我一开始也以为软链接大小是0,后来发现不对。
赶紧提醒你,查看文件大小时别把软链接和它指向的文件搞混了。

LINUX怎么按大小查找文件_LINUX按文件大小搜索命令教程

昨天整理硬盘,突然发现有个压缩包快占满分区了。
得赶紧找找,用find命令最合适。
在终端敲了句find . -size +5 00M -type f,回车就弹出一堆大文件,果然是个3 GB的旧项目备份。
等会儿,这结果怎么有符号的,加号代表大于5 00MB啊。
试了试find /home/user -size -5 0k -type f,找出几个临时缓存的小文件,正好5 0KB以下。
突然想到,要是能按大小排序就好了,敲了find . -size +1 00M -exec ls -lh {} | awk '{print $5 , $9 }',结果立马按大小排好了,单位还自动转成了MB和GB,挺好。
这时候又想,要是能直接统计数量呢?试试find . -size +2 00M | wc -l,秒出个数,有7 8 个。
等等,还有个事,单位别搞混了,K是千字节,不是小写的k哦。
怎么用这个命令还能找特定类型的文件?比如找大于1 GB的txt文件?find / -size +1 G -type f -name ".txt",试试看。
结果里有个系统日志文件是1 .2 GB,这算不算意外?