терминальная команда ls

Интересное наблюдение.

Заканчиваете ли Вы нас, l, ls, ll, ls-a, или ls-l, команда становится рекурсивным и если Вы, оказывается, пытаетесь разрешить ошибки ссылки, Вы тем, что прошли страницы ненужного дерьма в поисках Ваших фактических потребностей. Это особенно верно, если ссылка, которую Вы ищете, является (как в моем случае) папкой.

Я надеялся восстанавливать ссылку на python3.6, который обычно проникает через python3 (при нормальной установке). ll pyth* раньше перечислял просто все ссылки, которые получают настройки, и я мог просмотреть список и восстановление по мере необходимости. Однако прямо сейчас это перечисляет

python3:
... dist-пакеты

python3.6
.
..
весь список python3.6

и т.д...

и ни в том, ни в другом случае делает это, даже ссылаются на ссылки.

Новая установка 18,10, какие-либо мысли??

-1
задан 11 March 2019 в 10:47

1 ответ

Вывод, который Вы получаете, - то, потому что Вы используете сопоставление с образцом оболочки (globbing) pyth* и выполнение ls команда на каждом элементе производится шариком.

Оболочка возвращается python3 и python3.6 каталоги сначала наряду с любыми другими соответствиями. Они используются в качестве аргументов ls таким образом, Ваша команда заканчивается как

ls python3 python3.6 ...

Вывод этого показывает детализацию этого, Вы не интересуетесь. Обратите внимание, что это не действительно рекурсивно как иначе, Вы будете видеть содержание подкаталогов.

Существует несколько путей вокруг этого, как @steeldriver упомянуты в использовании комментариев -d или --directory только даст имена каталогов вместо содержания:

ls -d pyth*

Кроме того, можно использовать find использование команды -maxdepth 1 гарантировать его не убывает в подкаталоги. Отметьте -name аргумент заключается в кавычки так, чтобы он был расширен find а не оболочкой.

find . -maxdepth 1 -name 'pyth*'

Часто лучше использовать find чем ls если Вы собираетесь полагаться на вывод команды для последующей обработки как ls может дать неожиданные результаты при некоторых обстоятельствах.

3
ответ дан 26 October 2019 в 01:45

Другие вопросы по тегам:

Похожие вопросы: