Команды работы с файлами и каталогами
Команда cat
Команду cat (от слова concatenate, сцепить) как правило применяют для сцепления, связывания файлов; создания новых файлов; направления в стандартный вывод содержимого файлов и пр. Команда не имеет обязательных параметров. Например, команда выведет на экран содержимое файла.
$ cat file . txt
Команда
$ cat file1.txt file2.txt > file3.txt
сливает первые два файла и перемещает их в третий.
Команда
$ cat file 1. txt >> file 2. txt
дозаписывает содержимое первого файла во сторой.
Команда ls
Команда ls используется для представления информации о файлах и каталогах.
Команда ls для каждого имени каталога распечатывает список входящих в этот каталог файлов; для файлов – повторяется имя файла и выводится дополнительная информация в соответствии с указанными флагами. По умолчанию имена файлов выводятся в алфавитном порядке. Если имена не заданы, выдается содержимое текущего каталога. Если заданы несколько аргументов, то они сортируются по алфавиту, однако сначала всегда идут файлы, а потом каталоги с их содержимым.
Например, следующая команда выведет на экран текущего каталога
$ ls
Вывести содержимое каталога /cat1/cat2 можно выполнив команду
$ ls /cat1/cat2
Вызов команды ls с ключом –l позволит просмотреть режим доступа файлов и каталогов.
Результатом команды
$ ls -l
будет строка следующего формата:
-rwxr-xr-x 1 root sys 150 Jun 12 11:32 / cat1 / file 1
Первые 10 символов содержат сведения о файле и режиме доступа к нему. В качестве первого символа может быть указан один из следующих символов:
|
|
d | –файл является каталогом. |
b | –файл является специальным блочным файлом. |
c | –файл является специальным символьным файлом. |
p | –файл является именованным каналом. |
- | –обычный файл. |
Следующие 9 символов делятся на три тройки комбинаций. Первая тройка определяет права доступа для самого пользователя, вторая – для членов группы, третья – для других пользователей. В каждой позиции может быть установлен один из идентефикаторов r/w/x или '-', в случае если соответствующий режим доступа к файлу запрещен.
r | – право на чтение. |
w | – право на запись. |
x | – право на выполнение (поиск в каталоге). |
- | – данное право доступа отсутствует. |
Запись вида -rwxr-xr-x означает, что это – обычный файл, доступный для чтения, записи и выполнения его владельцу, членам группы и другим пользователям файл доступен для чтения и исполнения.
1 – определяет количество ссылок на файл;
root – вледелец файла – суперпользователь (пользователь с именем root);
sys – группа, к которой принадлежит пользователь;
150 – размер файла в байтах;
Jun 12 11:32 – дата последнего изменения файла 12 января, 11 часов, 32 минуты;
|
|
/ cat1 / file 1 – имя файла.
Команда cp
Команда копирования файла (copy).
Команда имеет следующий синтексис:
$ cp < опции> <файл-источник> <файл-приемник>
или
$ cp <опции> <файл-источник> <директория-приемник>/
В первом случае файл будет скопирован в текущий каталог (или указанный в явном виде) и ему будет задано имя файла-приемника. Во втором случае файл будет скопирован в указанную директорию. Сивол / в конце второй записи означает, что имя файла не будет изменено.
Команда rm
Команда удаления (remove) файлов из каталога. Для удаления файла пользователь должен обладать правом записи в каталог; иметь право на чтение или запись файла не обязательно.
Важно: при удалении файла в ОС Linux, он удаляется навсегда. Здесь нет возможностей вроде "мусорной корзины" или команды undelete, имеющейся в DOS.
Команда допускает применение следующих трех опций:
-f | – команда не будет выдавать сообщений, когда удаляемый файл не существует, не запрашивает подтверждения при удалении файлов, на запись в которые нет прав. Если нет права и на запись в каталог, файлы не удаляются. Сообщение об ошибке выдается лишь при попытке удалить каталог, на запись в который нет прав. |
-r | – рекурсивное удаление всех каталогов и подкаталогов, перечисленных в списке аргументов. Сначала каталоги опустошаются, затем удаляются. Подтверждение при удалении файлов, на запись в которые нет прав, не запрашивается, если задана опция -f или стандартный ввод не назначен на терминал и не задана опция -i. |
-i | – перед удалением каждого файла запрашивается подтверждение. Опция -i устраняет действие опции -f; она действует даже тогда, когда стандартный ввод не назначен на терминал. |
Например, при запуске команды
|
|
$ rm -ir dirname
запрашивается подтверждение:
Directory dirname: ?
При положительном ответе запрашиваются подтверждения на удаление всех содержащихся в каталоге файлов (для подкаталогов выполняются те же действия), а затем подтверждение на удаление самого каталога.
Команда mount/umount
Для работы с внешними носителями информации необходимо сначала присоединить корневой каталог его файловой системы (FAT32) к каталогу /mnt/usb файловой системы ОС Linux командой монтирования mount, которая вызывается в следующем формате:
$ mount /mnt/usb
Такой формат вызова обеспечен соответствующей записью в файле /etc/fstab, которая ассоциирует каталог монтирования /mnt/usb со специальным файлом /dev/sdb1 интерфейса через USB-порт, и разрешает монтирование обычному пользователю:
|
|
/dev/sdb1 /mnt/usb fat32 noauto, user
При успехе монтирования файловая система на USB Flash Drive интегрируется в файловую систему ОС Linux и доступ к ее каталогам и файлам осуществляется через каталог /mnt/usb обычным образом. Поэтому можно записать файл из текущего каталога на USB как в любой разрешенный для записи каталог файловой системы ОС Linux командой копирования cp:
$ ср file /mnt/usb
После окончания работы с внешним носителем данных необходимо отмонтировать устройство USB Flash Drive от файловой системы ОС Linux командой umount, выполнив следующую командную строку:
$ umount /mnt/usb
Только после этого можно физически отсоединить внешнее устройство от USB-порта.
Команда chmod
Команда chmod позволяет устанавливать (изменять) права доступа к файлам и каталогам (разделять привилегии между пользователями, ограничить доступ к нежелательным файлам или возможностям, контролировать доступные действия для сервисов и пр.).
Команда имеет следующий формат:
$ chmod [ < опции>] < права доступа > <файл> [ < файл2>, … ]
В ОС Linux существует три вида прав доступа к файлам и каталогам:
· право на чтение (r, read);
· право на запись (w, write);
· право на выполнение (x, execute).
Также в системе выделяется три категории пользователей, к которым указанные права доступа могут применяться:
· владелец файла (u, user);
· группа владельца файла (g, group);
· все остальные (o, other).
Таким образом, у каждого имеющегося в системе файла установлены три атрибута, определяющие права доступа для каждой категории пользователей. Поскольку в ОС Linux даже устройства являются файлами, данные атрибуты применимы ко всем элементам системы.
Аргумент команды chmod, определяющий права доступа, может быть записан в двух форматах: в числовом и в символьном.
Запись аргумента в числовом формате. При записи в числовом формате атрибуты доступа к файлу представлены в виде трех групп, состоящих из трех разрядов (рисунок 1.2).
user | group | other | ||||||
r | w | x | r | w | x | r | w | x |
Рис. 1.2. Атрибуты прав доступа к файлу
Каждый из разрядов может принимать одно из двух значений – 0 (право доступа отсутствует) или 1 (право доступа имеется). В таблице 1.4 представлены все возможные варианты комбинации прав доступа к файлу (применимо для любой категории пользователя).
Таблица 1.4
Дата добавления: 2020-01-07; просмотров: 197; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!