UNIX — универсальная среда программирования | страница 26



Соответственно вы можете выяснить, какие файлы есть у >mary:

>$ ls /usr/mary

>data

>junk

>$

или скопировать один из ее файлов:

>$ cp /usr/mary/data data

Вы можете редактировать ее файл:

>$ ed /usr/mary/data

Если Мэри не хочет, чтобы вы имели доступ к ее файлам, или того же не хотите вы, можно обеспечить защищенность каждого файла и каталога. С этой целью предусмотрены права доступа на чтение-запись-выполнение для владельца, группы и всех остальных пользователей. Право доступа используется для контроля обращения к файлу или каталогу. (Вспомните результат >ls -l.) В нашей системе большинство пользователей, как правило, считают, что открытая система более полезна, чем защищенная, но ваша политика может быть иной; мы вернемся к этому вопросу в гл. 2.

Завершая серию экспериментов с абсолютными именами, попробуйте ввести

>$ ls /bin /usr/bin

Не кажутся ли имена вам знакомыми? Когда вы запускаете команду, задавая ее после приглашения, система ищет файл с указанным именем. Вначале поиск ведется в вашем рабочем каталоге (где его, вероятно, найти не удается), затем в каталоге >/bin и, наконец, в >/usr/bin. Нет ничего особенного в командах, подобных >cat или >ls, за исключением того, что для удобства поиска и управления они находятся в нескольких каталогах. Чтобы убедиться в этом, попытайтесь выполнить некоторые из них, используя абсолютные имена:

>$ /bin/date

>Mon Sep 26 23:39:32 EDT 1983

>$ /bin/who

>srm tty1 Sep 26 22:20

>cvw tty4 Sep 26 22:40

>you tty5 Sep 26 23:04

>$

Упражнение 1.3

Попробуйте выполнить команду

>$ ls /usr/games

а затем что-либо из предложенного ею. Большее удовольствие это доставит вам в нерабочее время.

Смена каталога. Команда >cd

Если вы постоянно работаете с информацией, хранящейся в каталоге >mary, у вас может возникнуть желание работать с файлами Мэри, а не со своими. Для этого вам достаточно сменить каталог с помощью команды >cd:

>$ cd /usr/mary

Теперь, если использовать имя файла (без >/) в качестве аргумента для команд >cat или >pr, это будет файл из каталога >mary. Смена каталога не влияет на права доступа к файлу: если файл был недоступен из вашего каталога, то таким он и останется.

Обычно бывает удобно сгруппировать свои файлы так, чтобы все файлы, относящиеся к одному проекту, попали в отдельный каталог. Например, если вы надумаете писать книгу, то весь текст вы, естественно, захотите хранить в каталоге с именем >book (книга). Команда >mkdir создает новый каталог:

>$ mkdir book Создать каталог

>$ cd book