Как сделать ls
сортировку по типу файла (например, сначала по каталогам, а затем по расширению)? Ответы, предложенные в (Super User), заставляют сортировку ls по типу файла приводить к неизвестным ошибкам опций ls
.
15
Как сделать ls
сортировку по типу файла (например, сначала по каталогам, а затем по расширению)? Ответы, предложенные в (Super User), заставляют сортировку ls по типу файла приводить к неизвестным ошибкам опций ls
.
/bin/ls
.Ответы:
Как вы узнали, дарвиновская версия
ls
команды не поддерживает эту-X | --sort=extension
опцию. Эта опция уникальна для версии GNUls
.Вы можете получить версию GNU
ls
для вашей системы. Самый простой способ сделать это через менеджер пакетов Homebrew и систему портирования. С Homebrew установлено сделать:добавить пакет GNU Core Utilities в вашу систему. Все утилиты будут иметь префикс,
g
чтобы они не вступали в конфликт со стандартными утилитами Darwin, с которыми поставляется OS X.Установив GNU Core Utilites, вы можете:
И вы увидите результат, отсортированный по вашему желанию.
Если вы хотите использовать GNU Core Utils вместо утилит, поставляемых с OS X, вы можете поместить в свой
~/.bashrc
файл следующую строку :И вам больше не нужно использовать
g
префикс в командах. Я скажу, что это не совсем безопасно, поскольку некоторые утилиты GNU отличаются от встроенных функций bash и инструментов Darwin тем, как они ведут себя, настолько, что они могут испортить другие вещи в вашей сессии оболочки. Так что делайте это с осторожностью.источник
Основываясь на ответе в связанной статье Super User :
Если вы хотите увидеть весь результат
ls -l
, просто пропуститеcut
часть.источник