Обзор содержимого директорий и файлов

Перемещаться по директориям в файловой системе мы уже умеем очень неплохо. А вот просматривать их содержимое научимся прямо сейчас. Для начала разморозим виртуальную машину 🙂

cd и pwd

Команда ls

Перечисляет файлы и директории в указанных директориях. Мы уже поверхностно знакомы с ней из предыдущего материала и умеем выводить список файлов и папок рабочей директории. Но она может гораздо больше, чем просто перечислить содержимое в рабочей директории.

Команда ls предназначена для перечисления содержимого в директории. Это наиболее часто используемая команда в Linux. Есть множество способов ее применения. Рассмотрим наиболее популярные на примерах.

ls

Выводит список файлов и директорий в рабочей директории без отображения скрытых объектов (у которых имя начинается с символа «.» (точка)).

ls /bin

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

ls -l

Перечисление содержимого рабочей директории с выводом подробной информации о перечисляемых объектах.

ls -l /var /etc

Перечисление содержимого директорий /var и /etc с выводом подробной информации о перечисляемых объектах.

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

Таким образом можно одной командой получить информацию сразу по всем интересуемым директориям 😉

ls -la ..

Перечисление всех объектов (включая скрытых) в родительской директории с выводом подробной информаций о каждом из них.

Формат команд

Как видно из приведенных примеров, команда ls имеет определенный формат вызова. В Linux большинство команд имеют сходный формат вызова. Он следующий

команда -параметры аргументы

Где команда — имя команды или исполняемой программы, параметры — одна или несколько детальных настроек выполнения, аргументы — одна или несколько «вещей» которые должна обработать команда или программа.

На примере команды ls:

  • ls — имя команды
  • -l и -a — параметры (допускается объединение в -la при использовании обоих). Параметр -l указывает о необходимости вывода подробной информации, а -a о включении скрытых объектов. У параметра может быть указан его аргумент (в данном примере отсутствует), в таком случае при объединении аргумент применяется к последнему параметру. Если параметр не требует указания аргумента, то такой параметр называется ключом.
  • /var и /etc — аргументы, в данном случае список директорий, содержание информации которых нас интересует

Детальный вывод

При использовании параметра -l команды ls выводится подробная информация о содержимых объектах директории. Ознакомимся с её форматом более детально.

детальный вывод ls

Имя файла
Имя файла или директории.
Время изменения
Последнее время изменения файла. Если изменение произошло спустя более шести месяцев, то выводятся дата и год, иначе дата и время дня. То есть, вначале всегда выводится дата, которая состоит из месяца и числа, а после нее год или время в часах и минутах. Когда мы видим время, это значит файл был изменен за прошедшие шесть месяцев, т.е. в текущем или прошлом году 🙂
Размер
Размер файла в байтах. Для директории указывается размер метаданных (информации об объектах, которые содержатся внутри, включая их имена), а не суммарный размер содержимого. Изначально размер директории равен размеру кластера (обычно 4 Кб / 4096 байт), но может расти при необходимости.
Группа
Имя группы, для которой указаны права доступа.
Владелец
Имя учетной записи пользователя, который является владельцем файла.
Права доступа
Представление прав доступа к объекту. Первый символ указывает тип объекта. Символ «d» обозначает директорию, «-» — файл. Но есть и иные типы объектов в Linux. Далее идет три набора из трех символов, которые представляют права доступа. Первый символ указывает право чтения, второй записи, третий выполнения или входа. Первый набор из трех символов указывает права доступа владельца файла, второй — права группы файла, а последний указывает права доступа файла для всех остальных пользователей. Подробнее о правах доступа будет опубликован отдельный материал в будущем 😉

Программа less

Less это удобный инструмент для просмотра текстовых файлов. В линуксе большинство файлов для управления и конфигурации хранятся в текстовом формате, легко воспринимаемым человеком, поэтому программу less тоже очень часто используется 🙂

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

Некоторые способы представления информации достаточно сложные (например, сжатые изображения, аудио- и видеозаписи). Но есть и достаточно простые. Один из самых первых появившихся и самых простых — текст в кодировке ASCII (American Standard Code for Information — американский стандартный код для обмена информации). Эта простая схема кодирования впервые была использована на устройствах телетайпа для указания зависимости печатных символов и номеров.

Большинство файлов на Linux системах сохранены в текстовом формате. Существует множество инструментов для обработки текстовых файлов. В других операционных системах текстовый формат не менее важен чем в Linux, поэтому в них тоже присуствует инструменты для работы с ними. В Windows есть достаточно известный текстовый редактор «Блокнот», позволяющий просматривать и изменять текстовые файлы.

Для запуска программы less необходимо ввести less имя_файла, где имя файла — абсолютный или относительный путь к файлу.

Введем less /etc/sestatus.conf и нажмем клавишу «Enter». Выведено содержание файла /etc/sestatus.conf.

Отображение /etc/sestatus.conf в less

В терминал выведено содержание файла. В конце вывода отображается строка состояния, в которой указан путь к файлу и информация, что достигнут конец прокрутки файла. Для файлов с большим числом строк, на экране будет отображена лишь часть содержания (страница). Пролистать содержание файла можно с помощью клавиш на клавиатуре.

Для выхода из программы less нажмем клавишу q на клавиатуре.

Управление программой less

После запуска less отображает на экране по одной странице текста за раз. Листать страницы можно клавишами Page Up и Page Down. Помимо них, в less есть и иные команды. С командой «q» мы уже знакомы — выход из программы. Вот несколько иных полезных команд программы less.

Page Up или b
Прокрутка на предыдущую страницу текста.
Page Down или space
Прокрутка на следующую страницу текст.
G
Прокрутка в конец файла.
1G
Прокрутка в начало файла
/строка
Поиск следующего вхождения указанной строки в файле.
n
Повторный поиск следующего вхождения.
h
Отображение справочной информации по всем командам less.
q
Выход из программы.

Команды следует вводить просто нажимая клавиши на клавиатуре. После набора команды, за исключением некоторых, где требуется указать параметр после команды (например, поиска строки), она автоматически выполняется. Там, где требуется ввод параметра, ввод команды следует завершить нажатием клавиши Enter. Команды регистрозависимы.

Программа file

Если просто бродить по файлам Linux, то перед тем как их попытаться посмотреть их содержание, было бы полезно понять данные какого типа в них записаны. С этим может помочь инструмент file. Программа file изучает содержимое файла и сообщает, что это за файл.

Использовать данный инструмент очень просто. Для этого после file следует указать относительный или абсолютный путь к файлу, который нас интересует. Попробуем получить информацию по файлам /bin/bash и /etc/sestatus.conf.

Теперь мы знаем, файл /bin/bash является 32-битной программой Linux, а /etc/sestatus.conf обычный текстовый файл, а значит его можно посмотреть при помощи less 🙂

Результат работы программы file

Программа file может распознавать различные типы содержимого.

Может показаться, что у большинства файлов нельзя увидеть текстовое содержимое (открыть через less можно все файлы, но не все они будут читаемы глазом). На самом очень много файлов в Linux текстовые. Особенно важные конфигурационные файлы почти всегда хранятся в текстовом легко понятном человеку формате. Также можно заметить, что большинство возможностей операционной системы реализованы через shell-скрипты, в которых программа написана открытым читаемым текстом. Ведь в Linux нет секретов 🙂

А теперь настало время вновь заморозить виртуальную машину.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *