UNIX — универсальная среда программирования
UNIX — универсальная среда программирования читать книгу онлайн
В книге американских авторов — разработчиков операционной системы UNIX — блестяще решена проблема автоматизации деятельности программиста, системной поддержки его творчества, выходящей за рамки языков программирования. Профессионалам открыт богатый "встроенный" арсенал системы UNIX. Многочисленными примерами иллюстрировано использование языка управления заданиями
shell.
Для программистов-пользователей операционной системы UNIX.
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала
Таблица 1.1: Сводка команд файловой системы
1.3 Продолжаем изучать файлы: каталоги
Система отличит ваш файл с именем
junkВ общем случае каждый пользователь имеет свой личный каталог, иногда называемый начальным каталогом, который содержит только принадлежащие ему файлы. Входя в систему, вы оказываетесь в вашем личном (начальном) каталоге. Можно сменить каталог, с которым вы работаете (его часто называют рабочим или текущим каталогом), но ваш личный каталог останется тем же. Если не предпринять специальных действий, новый файл, создаваемый вами, попадает в текущий каталог. Так как вначале текущим является личный каталог, ваш файл никак не связан с файлом, имеющим то же имя, в чужом каталоге.
Каталог может содержать и другие каталоги как обычные файлы. Естественным способом представления такой организации каталогов служит дерево файлов и каталогов. В процессе обхода дерева — от корня вдоль нужных ветвей — можно найти любой файл системы. Можно поступить и наоборот: начать в произвольном месте и двигаться по направлению к корню.
Рассмотрим первый способ. Основным нашим средством будет команда
pwd$ pwd/usr/you$Команда выведет сообщение о том, что вы находитесь в каталоге you, а сам каталог — в каталоге
usr'/''/'/usr/usr/youpwd$ ls /usr/youвы получите тот же самый список файлов, который выдает только
lsls$ ls /usrЭто приведет к появлению длинного списка имен, среди которых есть и ваш начальный каталог
youНа следующем шаге попытайтесь распечатать сам корневой каталог. В результате получите ответ, подобный следующему:
$ ls /binbootdevetclibtmpunixusr$(Пусть вас не смущает то, что символ
'/'unixТеперь попробуйте ввести
$ cat /usr/you/junk(если файл
junk/usr/you/junkФайловая система имеет структуру, подобную генеалогическому дереву:

Рис. 1.1: Карта файловой системы UNIX
Ваш файл с именем
junkpaulmaryАбсолютные имена не слишком впечатляют, если все интересующие вас файлы находятся в вашем каталоге, но если вы работаете совместно с кем-либо или над несколькими проектами одновременно, они становятся весьма удобными. Например, ваши коллеги могут распечатать файл
junk$ cat /usr/you/junkСоответственно вы можете выяснить, какие файлы есть у
mary$ ls /usr/marydatajunk$или скопировать один из ее файлов:
$ cp /usr/mary/data dataВы можете редактировать ее файл:
$ ed /usr/mary/dataЕсли Мэри не хочет, чтобы вы имели доступ к ее файлам, или того же не хотите вы, можно обеспечить защищенность каждого файла и каталога. С этой целью предусмотрены права доступа на чтение-запись-выполнение для владельца, группы и всех остальных пользователей. Право доступа используется для контроля обращения к файлу или каталогу. (Вспомните результат
ls -lЗавершая серию экспериментов с абсолютными именами, попробуйте ввести
$ ls /bin /usr/binНе кажутся ли имена вам знакомыми? Когда вы запускаете команду, задавая ее после приглашения, система ищет файл с указанным именем. Вначале поиск ведется в вашем рабочем каталоге (где его, вероятно, найти не удается), затем в каталоге
/bin/usr/bincatls$ /bin/dateMon Sep 26 23:39:32 EDT 1983$ /bin/whosrm tty1 Sep 26 22:20cvw tty4 Sep 26 22:40you tty5 Sep 26 23:04$
