15%

Сэкономьте 15% на всех хостинговых услугах

Проверьте свои навыки и получите скидку на любой тарифный план

Используйте код:

Skills
Начать
02.09.2025

Как перечислить директории в Linux?

Работа в Linux часто ощущается как навигация по обширной библиотеке. Вместо полок у вас есть директории (папки), а вместо книг — файлы. Чтобы быть эффективным системным администратором, разработчиком или даже любопытным новичком, вам нужно освоить основы навигации по этой структуре. Одним из самых важных навыков является умение перечислять директории. Эта статья проведет вас через различные подходы, объяснит их плюсы и минусы и покажет, когда каждый метод имеет смысл.

Почему перечисление директорий важно

На персональном компьютере вы, возможно, только изредка заглядываете в папку «Документы» или «Загрузки». На сервере, однако, директории находятся в центре повседневных задач:

  • Системное администрирование: быстро проверьте, что находится в /etc/ или /var/log/.
  • Веб-хостинг: найдите папки проектов в /var/www/.
  • Разработка: идентифицируйте скрытые директории, такие как .git/ или .venv/.
  • Безопасность: подтвердите, что установлено и работает на системе.

Короче говоря: если вы не знаете, как эффективно перечислять директории, вы всегда будете чувствовать себя потерянным.

Самый простой способ: ls

Команда ls — это инструмент по умолчанию для отображения содержимого папки. Запустите ее без аргументов:

ls

Это покажет как файлы, так и директории. Если вы хотите увидеть только директории:

ls -d */

Вот что происходит:

  • -d говорит ls не углубляться в каждую директорию.
  • */ — это шаблон оболочки, который соответствует всем директориям в текущей папке.

Но есть ограничение: скрытые директории (те, которые начинаются с точки, например .git) не будут отображаться.

Если вы также хотите детали — разрешения, владельца, временные метки — выполните:

ls -ld */

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

Более надежный метод: find

find — это как прожектор: он может сканировать вашу систему на наличие директорий на любой глубине.

Перечислите все директории рекурсивно из текущего местоположения:

find . -type d

Только директории верхнего уровня (переносимые между Linux, macOS, BSD):

find . -mindepth 1 -prune -type d

Если вы находитесь на GNU/Linux (большинство дистрибутивов VPS), вы можете использовать более простую версию:

find . -maxdepth 1 -type d

Когда использовать find:

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

Почему не ls -l | grep “^d”?

Иногда вы увидите это предложение:

ls -l | grep "^d"

Это фильтрует вывод ls -l, чтобы показать только директории (так как они начинаются с d).

Но этот подход хрупкий:

  • Разные локали или цветовые настройки могут нарушить парсинг.
  • Символические ссылки на директории не появятся.
  • Не надежно для автоматизации.

Лучше использовать find вместо этого.

Лучшие практики

  • Для сценариев: используйте find — переносимый, последовательный и работает с скрытыми директориями.
  • Для быстрых проверок: ls -d */ вполне подходит — просто помните, что он игнорирует скрытые папки.
  • Для визуальной структуры: используйте tree.
  • Для безопасности: всегда дважды проверяйте скрытые директории — они часто хранят важные конфигурации (.ssh, .git, .config).
  • Заключение

Перечисление директорий — это базовый, но необходимый навык в Linux. В зависимости от контекста у вас есть несколько инструментов:

  • ls -d */ для быстрых проверок.
  • find . -mindepth 1 -prune -type d для надежных результатов верхнего уровня.
  • tree -d для визуальной карты вашей системы.

На VPS или выделенном сервере AlexHost эти команды помогут вам оставаться в полном контроле над вашей средой, будь то развертывание приложений, мониторинг логов или просто исследование файловой системы. Освоив их, вы сэкономите время, предотвратите ошибки и почувствуете себя как дома на любом компьютере с Linux.

15%

Сэкономьте 15% на всех хостинговых услугах

Проверьте свои навыки и получите скидку на любой тарифный план

Используйте код:

Skills
Начать