🏄♀️ Различные способы составления списка содержимого каталога без использования команды ls

by itisgood

Команда «ls» является наиболее часто используемой командой для вывода списка файлов и каталогов в каталоге в Unix-подобных системах.

Тем не менее, есть и другие способы просмотра содержимого каталога без использования команды ls.

Как вы, возможно, знаете, существует множество альтернативных программ наиболее популярным и широко используемым существующим программам Linux.

Мы уже писали о хороших альтернативах «top», альтернативам «du» и альтернативам «man».

Сегодня в этом уроке мы увидим 10 альтернативных способов составления списка содержимого каталога без использования команды «ls» в Linux.

Список содержимого каталога без использования команды ls

Обычно большинство пользователей Linux используют команду ls для вывода списка файлов и каталогов в каталоге.

Например, мы можем использовать следующую команду для отображения содержимого каталога с именем itisgood

$ ls itisgood

Вот как мы перечисляем файлы и каталоги.

Однако есть способы сделать это по-другому.

На данный момент я знаю только следующие десять методов.

Если я найду какой-нибудь другой лучший метод, я тоже добавлю его.

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

1. СПИСОК ФАЙЛОВ С ИСПОЛЬЗОВАНИЕМ КОМАНДЫ ECHO

Команда echo – наиболее часто используемая встроенная команда, которая используется в сценариях оболочки и пакетных программах для вывода заданных аргументов

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

Эта команда предназначена не только для печати заданных аргументов, но также может использоваться для вывода списка файлов.

Чтобы вывести список файлов, используемых в текущем каталоге, просто введите:

$ echo *

Чтобы вывести список всех файлов на один уровень ниже, используйте эту команду:

$ echo */*

Чтобы вывести список скрытых файлов, запустите:

$ echo * .*

Для более подробной информации обратитесь к справочным страницам.

$ man echo

Как видите, команда echo будет отображать только файлы, а не каталоги.

Нет проблем, следующие методы описывают, как составить список файлов и каталогов.

2. СПИСОК ФАЙЛОВ И СПРАВОЧНИКОВ С ИСПОЛЬЗОВАНИЕМ КОМАНДЫ PRINTF

Команда printf используется для форматирования и вывода текста.

Эта команда напечатает заданные аргументы в соответствии с заданным форматом или выполнит в соответствии с заданным параметром.

Чтобы просмотреть содержимое текущего каталога с помощью команды printf, выполните:

$ printf '%s\n' *

отличие от команды «echo», команда print отображает как файлы, так и каталоги.

Для более подробной информации обратитесь к справочным страницам.

$ man printf

3. Отобразить СПИСОК ФАЙЛОВ И ДИРЕКТОРИЙ, ИСПОЛЬЗУЯ КОМАНДУ DIR

Команда dir – это еще одна команда Linux для отображения содержимого каталога.

Это часто считается эквивалентом Windows, но работает в Linux почти так же.

Чтобы просмотреть текущее содержимое каталога, выполните:

$ dir

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

$ dir /home/sk/itisgood

Для просмотра всего содержимого, включая скрытые файлы:

$ dir -a

Обратитесь к страницам руководства, чтобы узнать больше о команде dir.

$ man dir

4. ОТОБРАЗИТЬ СПИСОК ФАЙЛОВ И КАТАЛОГОВ, ИСПОЛЬЗУЯ КОМАНДУ FIND

Команда find используется для поиска файлов в иерархии каталогов.

Не только для поиска файлов, мы также можем использовать команду find для отображения содержимого каталога, как показано ниже.

$ find -maxdepth 1

или же

$ find .

Как видите, первая команда выводит список всех файлов и каталогов на один уровень в текущем каталоге, тогда как вторая команда перечисляет все файлы и каталоги рекурсивно.

Вы можете также перечислить содержимое определенного каталога.

$ find dir1/

5. СПИСОК ФАЙЛОВ И СПРАВОЧНИКОВ С ИСПОЛЬЗОВАНИЕМ КОМАНДЫ STAT

Команда stat используется для отображения информации о файле и файловой системе.

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

Чтобы вывести список файлов и каталогов, используя команду «stat»,

$ stat -c '%A %n' *

Как видите, команда stat не только отображает содержимое текущего каталога, но и права доступа.

Это полезно, когда вы хотите просмотреть содержимое каталога, включая разрешения.

Проверьте man-страницы для более подробной информации о команде stat.

$ man stat

6. ПОКАЗАТЬ СПИСОК ФАЙЛОВ И ПАПОК С ИСПОЛЬЗОВАНИЕМ GREP

Команда grep используется для поиска текстовых файлов с регулярными выражениями.

Мы написали подробное руководство по использованию grep некоторое время назад.

Проверьте следующую ссылку, чтобы узнать больше о команде grep и ее вариантах.

⏰ Как перемещаться внутри директории / папки в Linux без команды cd?

Чтобы просмотреть содержимое каталога с помощью команды grep, просто запустите:

$ grep -l '.*' ./*

7. ОТОБРАЗИТЬ СПИСОК ФАЙЛОВ И ДИРЕКТОРИЙ, ИСПОЛЬЗУЮЯ КОМАНДУ LSATTR

Команда lsattr используется для вывода списка атрибутов файлов и каталогов в Linux.

Чтобы вывести список файлов и каталогов в текущем рабочем каталоге, используйте команду lsattr:

$ lsattr ./*

Как вы можете видеть в выводе, команда lsattr отображает содержимое только на один уровень ниже.

Другими словами, она не будет отображать никаких подкаталогов, его содержимое и скрытые файлы.

Проверьте man-страницы для получения подробной информации о команде lsattr.

$ man lsattr

8. ПОКАЗАТЬ СПИСОК ФАЙЛОВ И ДИРЕКТОРОВ, ИСПОЛЬЗУЮЯ КОМАНДУ GETFACL

Setfacl и getfacl являются наиболее полезными и важными командами, которые должен знать каждый системный администратор для установки списков контроля доступа (ACL) для файлов и каталогов.

Чтобы просмотреть список файлов и каталогов в текущем каталоге, просто запустите:

$ getfacl ./*

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

  1. владелец файла / каталога,
  2. группа, которая имеет к ней доступ,
  3. права доступа владельца, группы и др.

9. ОТОБРАЗИТЬ СПИСОК ФАЙЛОВ И ПАПОК, ИСПОЛЬЗУЯ ЦИКЛ FOR

Другой метод для отображения содержимого каталога – использовать цикл.

Я проверил работу в BASH, и все заработало нормально, как и ожидалось.

$ for i in *; do echo $i; done

Как вы видите выводе, мы можем перечислить текущее содержимое каталога, используя цикл for.

10. СПИСОК ФАЙЛОВ И КАТАЛОГОВ С ИСПОЛЬЗОВАНИЕМ РЕДАКТОРА VIM

И последнее, но не менее важное: редактор Vim также может использоваться для отображения файлов и каталогов.

Как вы, возможно, уже знаете, все в Linux – это файл.

Технически говоря, каталог – это файл, который содержит список файлов и / или подкаталогов.

Чтобы вывести список файлов и каталогов текущего каталога с помощью редактора Vim, используйте следующую команду:

$ vim .

Обратите внимание, что точка (.) указана в конце.

Чтобы просмотреть содержимое определенного каталога, выполните:

$ vim <path-to-dir>

Например

$ vim itisgood/

Просто используйте стрелки ВВЕРХ / ВНИЗ, чтобы перемещаться по списку.

Чтобы вывести список содержимого подкаталога, просто наведите на него курсор мыши и нажмите ENTER.

 

You may also like

Leave a Comment