linux shell實現對指定目錄下的文件依據大小進行排序


1、find可以實現對指定文件大小的查找

root@PC1:/home/test2# ls
b.ped  outcome.map  outcome.ped
root@PC1:/home/test2# ll -h
total 1.4G
-rw-r--r-- 1 root root 1.3G 12月 22 22:30 b.ped
-rw-r--r-- 1 root root 1.3M 12月 22 22:28 outcome.map
-rw-r--r-- 1 root root 158M 12月 22 22:29 outcome.ped
root@PC1:/home/test2# find ./ -type f -size +500M   ## -type f 指定對文件進行查找, -size +500M 指定查找大於500M的
./b.ped
root@PC1:/home/test2# ll -h
total 1.4G
-rw-r--r-- 1 root root 1.3G 12月 22 22:30 b.ped
-rw-r--r-- 1 root root 1.3M 12月 22 22:28 outcome.map
-rw-r--r-- 1 root root 158M 12月 22 22:29 outcome.ped
root@PC1:/home/test2# find ./ -type f -size -300M    ## 查找小於300M的文件
./outcome.map
./outcome.ped

 

2、ls -S直接實現對文件大小的排序

root@PC1:/home/test2# ls
b.ped  outcome.map  outcome.ped
root@PC1:/home/test2# ll -h
total 1.4G
-rw-r--r-- 1 root root 1.3G 12月 22 22:30 b.ped
-rw-r--r-- 1 root root 1.3M 12月 22 22:28 outcome.map
-rw-r--r-- 1 root root 158M 12月 22 22:29 outcome.ped
root@PC1:/home/test2# ls -S | sed 's/\t/\n/g'
b.ped
outcome.ped
outcome.map
root@PC1:/home/test2# ls -S | sed 's/\t/\n/g' | xargs du -h ## ls -S直接實現文件從大到小的排序 1.3G    b.ped
158M    outcome.ped
1.3M    outcome.map
root@PC1:/home/test2# ls -S | sed 's/\t/\n/g' | xargs du -h | sort
1.3G    b.ped
1.3M    outcome.map
158M    outcome.ped
root@PC1:/home/test2# ls -S | sed 's/\t/\n/g' | xargs du -h | sort -h ## 實現從小到大排序 1.3M    outcome.map
158M    outcome.ped
1.3G    b.ped

 

3、du命令實現排序

root@PC1:/home/test2# ls
b.ped  outcome.map  outcome.ped
root@PC1:/home/test2# du -ah   ## 列舉出每個文件的大小及總大小 1.3M    ./outcome.map
1.3G    ./b.ped
158M    ./outcome.ped
1.4G    .
root@PC1:/home/test2# du -ah | sort -h   ## 從小到大排序 1.3M    ./outcome.map
158M    ./outcome.ped
1.3G    ./b.ped
1.4G    .
root@PC1:/home/test2# du -ah | sort -h | sed '$d'  ## 從小到大排序並刪除最后一行
1.3M    ./outcome.map
158M    ./outcome.ped
1.3G    ./b.ped
root@PC1:/home/test2# du -ah | sort -rh   ## 從大到小排序 1.4G    .
1.3G    ./b.ped
158M    ./outcome.ped
1.3M    ./outcome.map
root@PC1:/home/test2# du -ah | sort -rh | sed 1d  ## 從大到小排序並刪除第一行 1.3G    ./b.ped
158M    ./outcome.ped
1.3M    ./outcome.map

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM