2.12 按文件的扩展名排序

ls -X

文件名称并不只是字母排序时唯一可用的排序对象。也可以对文件的扩展名进行字母顺序的排序。换句话说,你可以使用ls命令把所有以.doc结尾的文件分为一组,接着是以.jpg结尾的文件,最后是以.txt结尾的文件。使用-X选项(或--sort=extension);如果你想按相反的顺序排序,只需加上-r选项(或者--reverse)。

  1. $ ls -lX ~/src
  2. drwxr-xr-x 320 2005-10-06 22:35 backups
  3. drwxr-xr-x 1336 2005-09-18 15:01 fonts
  4. -rw-r--r-- 2983001 2005-06-20 02:15 install.tar.gz
  5. -rw-r--r-- 6683923 2005-09-24 22:41 DuckDoom.zip

在结果中,最先显示的是文件夹(毕竟,它们没有文件扩展名),后面接着显示具有扩展名的各个文件。尤其是注意install.tar.gz这个文件有两个扩展名,但ls命令在排序时使用最后一个扩展名(.gz)。