Практика бд. Операционные. Министерство образования и науки российской федерации университет итмо д. А. Зубок, А. В. Маятин
Скачать 324.61 Kb.
|
Лабораторная работа №5. Работа с файлово-каталожной системой в ОС GNU/LinuxРассматриваемые вопросыОсновные команды для работы с файлами и каталогами Использование механизма ссылок Прямая и косвенная адресация каталогов Методические рекомендацииПонятие файла является фундаментальным понятием для *nix операционных систем. Кроме простых (регулярных) файлов с данными в этом семействе операционных систем принято реализовывать с помощью специальных типов файлов интерфейсы доступа к внешним устройствам, отображения данных о процессах и ресурсах операционной системы, настроек компонентов операционной системы и пользовательских приложений и т.п. Следует отметить, что каталог (директорий) в *nix операционных системах также представляет собой специальный тип файла, хранящий имена и номера дескрипторов входящих в него подкаталогов и файлов. Основные команды для работы с файлами и каталогамиcd - смена каталога cp - копирование файлов ls - выводит список файлов и каталогов текущей директории file - указывает тип указанного файла find - поиск файлов ln - создание ссылок mkdir - создание каталога mv - перемещение файла или каталога pwd – вывод имени текущего каталога rm - удаления файла rmdir - удаление каталога cat - слияние и вывод файлов Ссылки на файлы В Linux существует два вида ссылок, обычно называемых жесткие ссылки и символьные, или "мягкие" ссылки. Жесткая ссылка является всего лишь именем какого-либо файла – записью в соответствующем каталоге со ссылкой на индексный дескриптор этого файла. Таким образом, файл может иметь одновременно несколько имен в различных каталогах. Он будет удален с диска только тогда, когда будет удалено последнее из его имен. Нет такого понятия, как "настоящее" имя: все имена имеют одинаковый статус. Мягкая ссылка (или символьная ссылка, или symlink) полностью отличается от жесткой ссылки: она является специальным файлом, который содержит путь к другому файлу. Таким образом, мягкая ссылка может указывать на файлы, которые находятся на других файловых системах, и не нуждается в наличии того файла, на который она указывает. Когда происходит попытка доступа к файлу, ядро операционной системы заменяет ссылку на тот путь, который она содержит. Однако команда rm удаляет саму ссылку, а не файл, на который она указывает. Для чтения состояния символьной ссылки, а также имени файла, на который она указывает, используется команда readlink. Полное имя файла может задаваться как с использованием абсолютного пути, например, /home/user/file, так и с помощью относительного пути – пути, заданного относительно текущего каталога. Это особенно часто применяется в скриптах. Для этого в каждом каталоге есть два служебных каталога: .. – указывает на родительский каталог . – указывает на текущий каталог Например, команда cd .. позволит перейти на уровень выше, а команда cd . ничего не изменит. Другой пример: команда ./script.bash запускает скрипт именно из текущего каталога. Наконец, если мы находимся в домашнем каталоге пользователя user, то путь к файлу |