- •1. Просмотр каталога (list): ls -ключи путь/имя_файла
- •Примеры:
- •Изменение прав доступа к файлу
- •Смена владельца (change owner): chown имя_пользователя имена_файлов смена группы (change group): chgrp имя_группы имена_файлов
- •Создание жестких и символьных ссылок
- •Создание жесткой ссылки: ln имя_файла имя_ссылки
- •Создание символьной ссылки:
- •Ввод и вывод. Перенаправление ввода и вывода
- •Работа с текстом в файлах
- •Поиск строк в файле, соответствующих регулярному выражению: grep -ключи шаблон файлы
- •Сортировка строк текста : sort -ключи имена_файлов
- •Выделение колонки текста: cut -ключи имена_файлов
- •Замена символов в строках: tr набор_символов1 набор_символов2
- •Конвейеры
- •Текстовый редактор VI
- •Запуск редактора:
- •Командный режим.
- •If условие
- •If условие
- •Выполнение арифметических операций: команда expr
- •127 (Результат)
- •Задания:
Изменение прав доступа к файлу
При создании объектов файловой системы (файлов, каталогов и т.д.) атрибуты объекта несут информацию о том, кто и что имеет право делать с этим объектом файловой системы.
Посмотреть атрибуты файлов и каталогов поможет команда ls -l (ключ l определяет длинный формат). Список атрибутов прав доступа состоит из 10 позиций.
- [- - -] [- - -] [- - -]
1. тип файла (d - каталог)
2-4. права хозяина (создателя)файла
5-7. права группы создателя файла
8-10. права посторонних (всех остальных)
r - чтение, w - запись, x - выполнение
Например, -rwxr-xr-x
1. Тип файла и режим доступа к нему, дефис значит, что это обыкновенный файл;
2-4. На данный файл владелец имеет полные права;
5-7. Пользователи, входящие в группу владельца, имеют права на чтение и выполнение;
8-10. Все остальные - права на чтение и выполнение.
Изменять права доступа к файлам и каталогам можно, используя следующие команды:
chmod права имена_файлов
Право изменять права есть лишь только у владельца файла и суперпользователя. Режим доступа можно указывать как в виде восьмеричного числа, так и виде мнемообозначения.
Обозначения: u (user)- для пользователя (владельца), g (group)- для группы, o (other) - для остальных пользователей, a (all)- для всех.
Примеры:
chmod go-w myfile (для файла запретить доступ на изменение/запись для группы и остальных пользователей).
chmod a+x file1 (всем разрешить выполнение файла file1, т.е. сделать его выполняемым).
Восьмеричное представление атрибутов:
В рассмотренном выше примере -rwxr-xr-x вместо букв подставим 1, в противном случае, если атрибут не установлен - 0. Получим:
0 111 101 101 переведем каждую тройку в 10-ую систему счисления: 0 7 5 5
Поскольку значение полученного числа в каждой позиции может быть только от 0 до 7, то говорят, что атрибуты заданы в восьмеричном представлении.
Команда chmod в этом случае запишется следующим образом:
chmod 755 file2
Другие команды:
Смена владельца (change owner): chown имя_пользователя имена_файлов смена группы (change group): chgrp имя_группы имена_файлов
В этих командах вместо имен могут быть использованы идентификаторы пользователя, группы. Команды применимы не только к файлам, но и к каталогам.
Создание жестких и символьных ссылок
Имя файла является атрибутом файловой системы, а не набора некоторых данных на диске, который не имеет имени как такового. Каждый файл имеет связанные с ним метаданные (хранящиеся в индексных дескрипторах или узлах - inode), содержащие все характеристики файла. Именно метаданные содержат указатели на дисковые блоки хранения данных файла. Имя файла в файловой системе Unix/Linux хранится только в каталоге, содержащим этот файл, там же содержится указатель на метаданные этого файла. Метаданные не содержат указателя на имя файла.
Такая архитектура позволяет одному файлу иметь несколько имен в файловой системе. Имена жестко связаны с метаданными и, соответственно, с данными файла, в то время как сам файл существует независимо от того, как его называют в файловой системе. Такая связь имени файла с его данными называется жесткой связью(hard link).
Жесткие связи абсолютно равноправны. Все атрибуты таких файлов будут абсолютно одинаковыми (кроме имен). С точки зрения пользователя - это разные файлы. Изменения, внесенные в любой из этих файлов, затронут и другой, поскольку они ссылаются на одни и те же данные файла на диске. Можно переместить один из файлов в другой каталог - все равно эти имена будут связаны жесткой связью с данными файла. Удаление одного из файлов, связанных жесткой ссылкой, не приведет к удалению самого файла, т. е. его метаданных и данных. Эти ссылки используются, например, для того, чтобы хранить под разными именами одну и ту же команду (выполняемый файл) командного интерпретатора. Так, выполняемый файл текстового редактора vi может вызываться по именами: ex, edit, view, vedit.