
- •Файловая система unix
- •Invite.Doc содержит приглашение на вечеринку от коллеги.
- •Байт-ориентированные и блок-ориентированные файлы устройств
- •Символические и жесткие ссылки
- •Именование файлов и каталогов
- •Предостережение
- •I Перенаправляет стандартный вывод на ввод следующей команды.
- •Организация файловой системы
- •Имена путей (pathnames)
- •Работа с каталогами
- •Получение списка файлов и каталогов командой ls
- •1: Запись является символической ссылкой.
- •Конец формы
Именование файлов и каталогов
Каждый файл идентифицируется именем, которое представляет собой последовательность символов. Старые версии UNIX имели ограничение на количество символов в имени файла. Все новые версии UNIX такого ограничения уже не имеют. Тем не менее при именовании файлов следует быть внимательным. Хотя UNIX и позволяет большинству символов использоваться в имени файла, но некоторые из символов в UNIX имеют специальное значение и их использование в имени может вызвать определенные проблемы.
Например, символ > используется как оператор перенаправления вывода. Если необходимо создать файл с именем х>у, то, по идее, нужно использовать команду touch:
touch x>y
Но при этом получилось бы два файла: один с именем х, другой с именем у.
Для обхода проблемы используйте специальный символ (\) (в оболочках Кот и С), а команду touch применяйте следующим образом:
touch x\>y
Применение специальных символов, таких как звездочка (*) и знак доллара ($) в имени файла не работает, поскольку оболочка интерпретирует данные символы по особому. Присутствие таких символов может заставить оболочку интерпретировать имя файла как команду и выполнить ее.
Ниже следует список символов, которые можно использовать как часть имен файлов UNIX:
Символы от А до Z или от а до z
Цифры от 0 до 9
Подчеркивание (_)
Точка (.)
Подчеркивание может разделять слова в имени, облегчая тем самым чтение. Например, вместо названия файла mytestfile его можно назвать my__test_file.
Точку можно задействовать перед расширением имени файла, так как она используется в именах файлов DOS. Например, файл с исходным кодом на языке С содержит программу под названием prog. Тогда файл можно назвать prog.c. Однако в UNIXвы не ограничены одним расширением. Следует иметь в виду, что точка (.),использующаяся как первый символ в имени файла, имеет специальное значение.Точка в качестве первого символа дает файлу статус скрытого. Например, если у вас есть файлы х и .х, в текущем каталоге, то команда ls покажет только файл х. Чтобы увидеть все файлы, используйте ls -a.
Предостережение
UNIX чувствительна к регистру. Например, файл с именем abc отличается от файла с именем АВС. Некоторые из системных файлов, которые начинаются с точки, например, файл .profile, называются скрытыми. Они не отображаются до тех пор, пока не будет задействован специальный флаг в команде ls
В таблице 1 представлен список символов или комбинаций символов, которых следует избегать, поскольку они обладают особым значением. Данный список не является исчерпывающим и зависит от используемой оболочки UNIX.
Таблица 1. Значение некоторых специальных символов.
Символ Значение
$ Указывает начало имени переменной оболочки. Например, $var соответствует переменной
оболочки с именем var.
I Перенаправляет стандартный вывод на ввод следующей команды.
# Начинает комментарий.
& Выполняет процесс в фоновом режиме.
? Соответствует одному символу.
* Соответствует одному или нескольким символам.
$# Количество аргументов, переданных сценарию оболочки.
$* Аргументы, переданные сценарию оболочки.
$? Возвращает код предыдущей выполненной команды.
$$ Идентификационный номер процесса.
> Оператор перенаправления вывода.
< Оператор перенаправления ввода.
\ (обратная кавычка) Подстановка команды.
p Оператор перенаправления вывода (для добавления в конец файла).
[] Перечисляет диапазон символов, [a-z] означает все символы от а до z. [a,z] означает символы
а или z.
. имяфайла Выполняет файл имяфайла.
: Разделитель имен каталогов в строке пути.