Como descubrió, la versión Darwin del ls
comando no admite la -X | --sort=extension
opción. Esta opción es exclusiva de la versión GNU de ls
.
Puede obtener la versión GNU de ls
su sistema. La forma más fácil de hacerlo es a través del administrador de paquetes Homebrew y el sistema de portabilidad. Con Homebrew instalado haz:
brew install coreutils
para agregar el paquete GNU Core Utilities a su sistema. Todas las utilidades tendrán el prefijo g
para que no choquen con las utilidades predeterminadas de Darwin con las que se incluye OS X.
Con GNU Core Utilites instalado, ahora puede hacer:
gls -X
Y verá la salida ordenada como desee.
Si desea utilizar GNU Core Utils en lugar de las utilidades que vienen con OS X, puede poner la siguiente línea en su ~/.bashrc
archivo:
source /usr/local/Cellar/coreutils/8.14/aliases
Y ya no necesitará usar el g
prefijo en los comandos. Diré que esto no es algo completamente seguro, ya que algunas de las utilidades de GNU difieren de las herramientas integradas de bash y las herramientas de Darwin en su comportamiento, lo suficiente como para que puedan arruinar otras cosas en su sesión de shell. Hazlo con precaución.
/bin/ls
.