Файловая система ОС Unix имеет иерархическую (древовидную) структуру. В вершинах дерева находятся каталоги (используют также термины - справочники, директории), содержащие списки файлов. Эти файлы в свою очередь могут быть либо снова каталогами, либо обычными файлами, либо специальными файлами, представляющими различные утройства ввода-вывода.
/ | ----------------------------------------------------------- | | | | | | | | | | bin boot dev etc lib mnt sys . . . tmp unix usr
А также обычные (выполняемые) файлы:
Полные имена файлов будут:
/bin, /usr, ..., /unix, /boot.
полные имена этих файлов будут:
/usr/bin /usr/games /usr/include /usr/lib
/usr/include/sys/conf
Относительное имя начинается не с "/", и определят имя относительно своего местоположения. Если (пользовател?) в данный момент находится в директории /usr файловой системы, то он может обратиться к этому же файлу по относительному имени
include/sys/conf
В качестве имени файла как правило может использоваться любая последоватьельность из букв, цифр и подчеркиваний. Могут использоваться и другие символы, однако ряд этих символов при использованнии в имени требует специального экранирования. (Лучше не пользоваться специальными символами в именах - иногда это может привести к сложностям в обращении к таким именам, поскольку спецсимволы могут иметь в shell некоторый специальный смысл).
В ряде систем длина имени ограничивается 14-ю символами (этого ограничения желательно придерживаться для переносимости файлов), однако в других системах допускаются более длинные имена - например, до 256 символов.
В общем случае не явлются обязательными и какие-то расширения в именах. Хотя ряд команд требуют наличия некоторых фиксированных расширений в именах, например расширение ".с" для исходных файлов для Си-компилятора.
КСТАТИ. В ОС UNIX большие и маленькие буквы воспринимаются как различные, поэтому "FILE", "file" и "File" - это три различных имени!
ВАЖНОЕ ЗАМЕЧАНИЕ. Отдельные части файловой системы могут находиться на различных физических устройствах, например, на нескольких жестких и гибких дисках (или в различных частях одного диска). Соответсвующие фрагменты (поддеревья файловой системы) монтируются (присоединяются) в единую файловую систему командой mount (обычно это функция администратора системы), после чего пользователь может обращаться к любым доступным файлам, при этом в имени никак не отражается устройство, на котором файл находится или создается (т.е. никаких "A:").
Командный язык ОС Unix - shell оперирует с командами. Более подробно о нем разговор далее, а пока рассмотрим несколько команд работы с файловой системой.
Например, в результате выполнения команды:
ls -l /usr
drwxrwxr-x 2 root 2048 nov 3 12:11 bin -rwxr--r-- 1 root 861 may 11 20:11 boot drwxrwxr-x 2 root 1024 jan 9 11:55 dev drwxrwxr-x 1 root 4096 may 11 20:11 dos drw-r--r-- 3 root 4096 nov 17 12:01 include drwxr-xr-x 7 root 480 nov 17 12:30 lib
Далее, 2 - это число связей файла (т.е. где-то в системе есть еще одно имя, связанное с этим файлом); root - имя владельца, 2048 - число символов в файле, nov 3 12:11 - дата и время создания или последней модификации файла (3 ноября в 12-11); bin - имя файла (каталог команд).
Во второй строке указан обычный текстовый файл (boot), который прочие пользователи могут только читать.
Команда "pwd" (без флагов и аргументов) сообщает местоположение пользователя в файловой системе. С ее помощью выводится полное имя текущего каталога.
При входе в систему пользователь оказывается в определенной заранее вершине дерева. Пусть, например, это будет каталог "/usr".
Изменить местонахождение можно командой "cd <каталог>". Так можно перейти в каталог /usr/include/sys, набрав команду:
cd /usr/include/sys
cd include/sys
Отличительный признак относительного имени - отсутствие символа "/" в начале.
Команда "cd .." осуществит переход вверх на предыдущий уровень. Из "/usr/include/sys" произойдет переход в "/usr/include", а команда "cd" (т.е. без параметров) осущствит переход в начальный директорий пользователя (т.е. директорий, в котором пользователь оказывается при входе в систему).
Создать новые каталоги можно с помощью команды:
mkdir <имена создаваемых каталогов>
Удалить пустой (не содержащий файлов) каталог можно с помощью команды:
rmdir <имена удаляемых каталогов>
rm <имена удаляемых файлов>
В ОС Unix около 200 базовых команд - инструментальных средств, позволяющих пользователю решать многие свои проблемы, не прибегая к программированию на языках типа Си или использованию специальных пакетов.
Командой
rm файл-1
Командой
rmdir файл-1
Командой
mv старое-имя новое-имя
Командой
cp старое-имя новое-имя
Очень важна команда
chmod 755 расчет