2014年9月30日 星期二

[Linux 文章收集] Linux ls Command: Sort Files By Size

Source From Here 
Preface 
How do I sort all *.avi or *.py files in $HOME/Download/ directory by file size using Linux ls command line utility? 

The ls command is used to list directory contents under Linux and Unix like operating systems. If no options or operands are given, the contents of the current directory are displayed on the screen. By default entries are sorted alphabetically if none of the -cftuvSUX nor --sort option passed to the ls command. 

The default output (sort by alphabetically) 
Type the following command: 
$ ls
$ ls *.py
$ ls *.avi

Sample outputs: 
 

Force sort by size option 
You need to pass the -S or --sort=size option as follows: 
$ ls -S
$ ls -S -l
$ ls --sort=size -l
$ ls --sort=size *.avi
$ ls -S -l *.avi

Sample outputs: 
 

You will see largest file first before sorting the operands in lexicographical order. The following command will sort file size in reverse order: 
$ ls -l -S | sort -k 5 -n

OR try (see comments below, thanks!): 
$ ls -lSr

Sample Output: 
 

Sort output and print sizes in human readable format (e.g., 1K 234M 2G) 
Pass the -h option to the ls command as follows: 
$ ls -lSh
$ ls -l -S -h *.avi
$ ls -l -S -h ~/Downloads/*.mp4 | more

Supplement 
Linux/Unix Command - sort

沒有留言:

張貼留言

[Git 常見問題] error: The following untracked working tree files would be overwritten by merge

  Source From  Here 方案1: // x -----删除忽略文件已经对 git 来说不识别的文件 // d -----删除未被添加到 git 的路径中的文件 // f -----强制运行 #   git clean -d -fx 方案2: 今天在服务器上  gi...