40
Лабораторная работа №7. Работа с файлами в Linux
7.1 Цель работы
Целью данной лабораторной работы явялется изучение особенностей
работы с файлами в операционной системе Linux.
7.2 Теоретическая часть
Файловая система — это структура, с
помощью которой ядро
операционной системы предоставляет пользователям (и процессам) ресурсы
долговременной памяти системы, т. е. памяти на различного вида
долговременных носителях информации — жестких дисках, магнитных лентах.
CD-ROM и т. п.
С точки зрения ОС файл представляет собой непрерывный поток (или
последовательность) байтов определенной длины. Внутренний формат файла
операционную систему не интересует. Но ОС должна дать файлу какое-то имя,
с
помощью которого пользователь, а точнее, программы-приложения, будут
обращаться к файлу. Как организовать это обращение — дело файловой
системы, пользователя это чаще всего не интересует.
Поэтому с точки зрения
пользователя файловая система выглядит как логическая структура каталогов и
файлов.
Имена файлов в Linux могут иметь длину до 255 символов и состоять из
любых символов, кроме символа с кодом 0 и символа / (слэша). Однако имеется
еще ряд символов, которые имеют в оболочке shell специальное значение и
которые поэтому не рекомендуется включать в имена. Это следующие символы:
! @ # $ & ~ % * ( ) [ ] { } ' " \ : ; > < ` пробел.
Если имя файла содержит один из этих символов (это не рекомендуется,
но возможно), то вы должны перед этим символом поставить символ обратного
слэша "\" (в том числе и перед самим этим слэшем, т. е. повторить его дважды).
[user]$ mkdir \\my\&his
Можно также заключить имя файла или каталога с такими символами в
двойные кавычки.
Например, для создания каталога с именем "My old files"
следует использовать команду:
[user]$ mkdir "My old files"
так как команда
[user]$ mkdir My old files
создаст каталог с именем "My".
41
Аналогичным образом можно поступать и с другими символами,
перечисленными выше, т. е. их можно включать в имена файлов,
если имя
файла взять в двойные кавычки или отменить специальное значение символа с
помощью обратного слэша. Но все же предпочтительнее не использовать эти
символы, включая пробел, в именах файлов и каталогов, потому что могут
возникнуть проблемы при обращении к
таким файлам из некоторых
приложений, а также при переносе таких файлов в другие файловые системы.
Но к точке сказанное не относится, и в Linux часто ставят более одной
точки
в
именах
файлов,
например,
This_is.a.forth-chapter_of_my_
book.about.Linux. При этом теряет смысл такое понятие (принятое в DOS), как
расширение имени файла, хотя все же часто последние части имени,
отделенные точками, используют для обозначения
файлов каких-то особых
типов (например, .tar.gz используется для обозначения сжатых архивов). Но
исполняемые и неисполняемые файлы в Linux распознаются не по
расширениям имен файлов. Для этого существуют другие признаки, о которых
мы скажем чуть позже. Точка имеет особое значение в именах файлов. Если она
является первым символом имени, то данный файл считается скрытым для
некоторых команд, например, он не показывается при выполнении команды ls.
В Linux различаются символы верхнего и нижнего регистра в именах
файлов. Поэтому FILENAME.tar.gz и filename.tar.gz вполне могут существовать
одновременно и являться именами разных файлов.
Достарыңызбен бөлісу: