使ls命令按文件类型排序(例如目录和文件扩展名)


Answers:


20

正如您所知,该ls命令的Darwin版本不支持该-X | --sort=extension选项。此选项是GNU版本的唯一选项ls

您可以获取系统的GNU版本ls。最简单的方法是通过Homebrew包管理器和移植系统。安装Homebrew后:

brew install coreutils

GNU Core Utilities包添加到您的系统。所有实用程序都将以前缀为前缀,g因此它们不会与OS X附带的默认Darwin工具冲突。

安装GNU Core Utilites后,您现在可以:

gls -X

并且您将看到输出按您的需要排序。

如果要使用GNU Core Utils而不是OS X附带的实用程序,可以在~/.bashrc文件中添加以下行:

source /usr/local/Cellar/coreutils/8.14/aliases

而且您不再需要g在命令上使用前缀。我会说这不是一个完全安全的事情,因为一些GNU工具与bash内置函数和Darwin工具在它们的行为方式上有所不同,足以让它们搞砸你的shell会话中的其他东西。所以要谨慎这样做。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.