Основные команды Linux: как с помощью ls -al быстро проверить скрытые файлы и права доступа

Обзор

Проверка скрытых конфигурационных файлов и прав доступа к файлам в среде Linux — это первый шаг в системном администрировании и разработке. В этой статье мы рассмотрим, как с помощью команды ls -al быстро и точно проверять скрытые файлы, а также познакомимся с необходимыми на практике опциями. Освойте права доступа к файлам и советы по сортировке с помощью практических упражнений в терминале.

1. Концепция файловой системы Linux, скрытых файлов (.) и опция -a

Команда mkdir -p ~/ls_practice && cd ~/ls_practice создает необходимый для практики каталог и переходит в него.
После создания каталога с помощью mkdir команда cd выполняется последовательно через оператор && для перехода.
В результате выполнения каталог успешно создается по указанному пути, а текущий рабочий каталог меняется.
⚙️ [Основные опции]

-p : При необходимости создает родительские каталоги и не выдает ошибку, если каталог уже существует.
-m : Устанавливает права доступа напрямую при создании каталога.
-v : Выводит на экран подробную информацию о процессе создания каталога.

mkdir -p ~/ls_practice && cd ~/ls_practice

Команда touch sample_file.txt создает новый обычный текстовый файл для практики.
touch изначально предназначена для изменения временных меток файла, но если файл не существует, она создает новый пустой файл размером 0 байт.
В результате выполнения в текущем каталоге создается пустой файл sample_file.txt.
⚙️ [Основные опции]

-a : Изменяет только время доступа (access) к файлу.
-m : Изменяет только время модификации (modification) файла.
-c : Не создает новый файл, если указанный файл не существует.
-r : Изменяет временную метку на такую же, как у указанного эталонного файла.

touch sample_file.txt

Команда touch .hidden_config создает скрытый файл, добавляя точку (.) в начало имени файла.
В файловой системе Linux файлы и каталоги, имена которых начинаются с точки (.), считаются скрытыми элементами системных настроек.
В результате выполнения создается новый скрытый конфигурационный файл .hidden_config, который обычно не виден стандартным способом.
⚙️ [Основные опции]

-a : Изменяет только время доступа (access) к файлу.
-m : Изменяет только время модификации (modification) файла.
-c : Не создает новый файл, если указанный файл не существует.
-t : Устанавливает временную метку в указанном формате времени вместо текущего.

touch .hidden_config

Команда ls выводит список файлов и каталогов, находящихся в текущем рабочем каталоге.
При запуске без опций на экране отображаются только обычные файлы и каталоги по умолчанию.
В результате выполнения ранее созданный файл .hidden_config не отображается, выводится только обычный файл sample_file.txt.
⚙️ [Основные опции]

-a : Выводит все файлы и каталоги, включая скрытые элементы, начинающиеся с точки (.).
-l : Выводит подробную информацию, такую как права доступа к файлу, владелец, группа, размер файла, время изменения.
-h : Преобразует размер файла в удобный для чтения человеку формат (K, M, G).
-t : Сортирует и выводит файлы по времени их изменения, а не в алфавитном порядке.
-r : Меняет порядок сортировки на противоположный.
-R : Рекурсивно выводит все внутреннее содержимое подкаталогов.

ls

Команда ls -a выводит все элементы в каталоге, включая скрытые файлы и каталоги.
Передача опции -a базовой команде ls позволяет сразу увидеть скрытые файлы, начинающиеся с точки (.).
В результате выполнения в списке выводятся не только обычные файлы, но и файл .hidden_config, а также текущий каталог (.) и родительский каталог (..).
⚙️ [Основные опции]

-a : Выводит все элементы, включая скрытые файлы и каталоги, начинающиеся с точки (.).
-A : Выводит скрытые файлы и каталоги, начинающиеся с точки (.), за исключением текущего каталога (.) и родительского каталога (..).
-l : Выводит подробные атрибуты файла, такие как права доступа, владелец, размер, в виде списка.
-F : Добавляет символ / после каталогов и * после исполняемых файлов для различения типов файлов.
-i : Выводит уникальный номер inode для каждого файла и каталога.

ls -a

2. Проверка подробной информации и прав доступа с помощью ls -l и ls -al

Команда echo 'Ubuntu Security' > sample_file.txt сохраняет указанную строку в файл.
Команда echo выводит введенный текст, а оператор перенаправления > перезаписывает и записывает вывод в указанный файл.
При выполнении этой команды будет создан новый файл sample_file.txt, содержащий строку Ubuntu Security.
После выполнения в терминале не отображается никаких сообщений, и запись файла завершается успешно.
⚙️ [Основные опции]

-n : Не выводит символ новой строки в конце выводимой строки.
-e : Включает интерпретацию управляющих символов с обратным слэшем.
-E : Отключает интерпретацию управляющих символов с обратным слэшем.

echo ‘Ubuntu Security’ > sample_file.txt

Команда echo 'Secret Key' > .hidden_config записывает конфигурационные данные в скрытый файл.
Текст Secret Key сохраняется в файл .hidden_config, имя которого начинается с точки (.).
В системах Linux файлы, начинающиеся с точки (.), обрабатываются как скрытые и исключаются из обычного списка.
В результате выполнения команды на экране не отображается никакой текст, и скрытый файл успешно создается.
⚙️ [Основные опции]

-n : Удаляет символ новой строки в конце вывода текста.
-e : Включает интерпретацию управляющих символов.
-E : Отключает функцию интерпретации управляющих символов.

echo ‘Secret Key’ > .hidden_config

Команда ls -l отображает список обычных файлов и каталогов в текущем каталоге вместе с подробной информацией.
Опция -l выводит подробные сведения, такие как права доступа к файлу, владелец, группа владельца, размер файла и время последнего изменения, в длинном формате.
Поскольку это обычный режим просмотра списка, скрытые файлы, начинающиеся с точки (.), не отображаются на экране.
Первая строка вывода total 64 указывает размер блоков каталога, занимаемых обычными элементами, отображаемыми в списке.
⚙️ [Основные опции]

-l : Выводит подробную информацию, такую как права доступа к файлу, владелец, размер файла, время изменения.
-h : Отображает размер файла в удобных для чтения единицах (KB, MB, GB).
-t : Сортирует файлы по времени последнего изменения.
-r : Меняет порядок сортировки на противоположный.
-S : Сортирует и выводит файлы по убыванию размера.

ls -l

Команда ls -al выводит подробный список информации, включая все скрытые файлы и каталоги.
Сочетание опций -a и -l позволяет отображать даже скрытые файлы, начинающиеся с точки (.), вместе с информацией о правах доступа и размере.
В результате выполнения в начале отображаются только что созданный .hidden_config, а также стандартные скрытые элементы .dockerenv, . и ...
Первая строка вывода total 76 означает, что общий размер блоков увеличился по сравнению с выводом ls -l из-за добавления скрытых файлов.
⚙️ [Основные опции]

-a : Выводит все элементы, включая скрытые файлы и каталоги, начинающиеся с точки (.).
-l : Отображает подробную информацию, такую как права доступа к файлу, владелец, размер, время изменения, в виде списка.
-A : Выводит скрытые файлы и все элементы, кроме текущего каталога (.) и родительского каталога (..).
-i : Выводит уникальный номер inode для каждого файла вместе со списком.
-R : Рекурсивно выводит все содержимое подкаталогов.

ls -al

3. Комбинация с опцией -h для отображения в удобных для чтения единицах (ls -alh)

Команда truncate -s 5M large_file.bin создает новый пустой файл указанного размера или изменяет размер существующего файла.
При выполнении этой команды создается обычный тестовый файл large_file.bin размером 5 МБ.
⚙️ [Основные опции]

-s : Указывает размер файла в байтах или в единицах K, M, G и т. д.
-c : Не создает новый файл, если указанный файл не существует.
-r : Устанавливает размер равным размеру другого существующего эталонного файла.

truncate -s 5M large_file.bin

Команда truncate -s 10M .large_hidden_file.bin создает скрытый файл размером 10 МБ, имя которого начинается с точки (.).
В файловой системе Linux добавление точки (.) в начало имени файла делает данный элемент скрытым файлом.
⚙️ [Основные опции]

-s : Указывает размер файла в байтах или в единицах K, M, G и т. д.
-c : Предотвращает автоматическое создание нового файла, если файл отсутствует.
-r : Берет размер отдельного эталонного файла в качестве базового значения и применяет его.

truncate -s 10M .large_hidden_file.bin

Команда ls -l выводит подробную информацию об атрибутах обычных файлов и каталогов в директории в виде списка.
В результате выполнения large_file.bin отображается в байтах как 5242880, что затрудняет наглядную оценку размера, а скрытый файл .large_hidden_file.bin исключается из списка.
⚙️ [Основные опции]

-l : Выводит подробную информацию, такую как права доступа к файлу, владелец, размер файла в байтах, время изменения.
-a : Выводит все элементы каталога, включая скрытые файлы, начинающиеся с точки (.).
-h : Преобразует размер файла в удобные для чтения человеком единицы измерения, такие как K, M, G.
-t : Сортирует элементы по времени последнего изменения.
-r : Меняет порядок сортировки на противоположный.

ls -l

Команда ls -alh отображает полный список, включая скрытые файлы, объединяя подробную информацию и удобные для чтения человеком единицы измерения размера.
В результате выполнения 5242880 байт автоматически преобразуются в 5.0M, а скрытый файл .large_hidden_file.bin размером 10 МБ появляется в списке с отметкой 10M.
⚙️ [Основные опции]

-a : Включает в список скрытые файлы и каталоги, начинающиеся с точки (.).
-l : Выводит список с подробными атрибутами, такими как права доступа, учетная запись владельца, размер файла.
-h : Преобразует размер файла в наглядные единицы измерения, такие как KB, MB, GB.
-S : Сортирует элементы по порядку, начиная с самого большого размера файла.
-R : Рекурсивно проверяет и выводит файлы внутри подкаталогов.

ls -alh

4. Комбинирование полезных на практике опций сортировки по времени (-t) и размеру (-S)

Команда touch -t 202601010000 .old_hidden_log создает или изменяет файл, непосредственно указывая время его модификации.
В этом примере создается пустой скрытый файл .old_hidden_log со временем 1 января 2026 года, 00:00, чтобы проверить результаты сортировки по временной метке.
⚙️ [Основные опции]

-t : Устанавливает время изменения и доступа к файлу в указанном формате даты и времени.

touch -t 202601010000 .old_hidden_log

Команда ls -alt выводит подробный список всех элементов каталога, включая скрытые файлы, отсортированный по времени последнего изменения.
В результате выполнения файлы, которые были изменены или созданы последними, размещаются вверху списка.
⚙️ [Основные опции]

-a : Выводит все элементы, включая скрытые файлы и скрытые каталоги, начинающиеся с точки.
-l : Отображает подробную информацию, такую как права доступа к файлу, владелец, размер, время изменения, в виде списка.
-t : Сортирует файлы и каталоги по убыванию времени последнего изменения.

ls -alt

Команда ls -alS выводит подробную информацию обо всех элементах, включая скрытые файлы, отсортированную по убыванию размера файла.
Это полезно при управлении дисковым пространством для быстрого обнаружения больших файлов или каталогов.
⚙️ [Основные опции]

-a : Выводит все элементы, включая скрытые файлы и скрытые каталоги, начинающиеся с точки.
-l : Отображает подробную информацию, такую как права доступа к файлу, владелец, размер, время изменения, в виде списка.
-S : Сортирует список по убыванию размера файлов.

ls -alS

Команда ls -alrt выводит подробную информацию обо всех элементах, включая скрытые файлы, отсортированную по времени изменения в порядке от старых к новым.
Благодаря обратной сортировке по времени последние измененные файлы отображаются в самом низу экрана терминала, что удобно для быстрой проверки.
⚙️ [Основные опции]

-a : Выводит все элементы, включая скрытые файлы и скрытые каталоги, начинающиеся с точки.
-l : Отображает подробную информацию, такую как права доступа к файлу, владелец, размер, время изменения, в виде списка.
-r : Меняет порядок сортировки на обратный (по возрастанию).
-t : Сортирует файлы и каталоги по времени последнего изменения.

ls -alrt

В этой статье мы рассмотрели, как использовать основную команду Linux ls -al для проверки скрытых файлов и подробной информации о правах доступа.
Надеемся, что это руководство поможет вам более эффективно управлять файлами и каталогами в среде Linux.