Разглядывание содержимого каталогов
Дерево каталогов
Большинство систем UNIX имеет стандартную структуру каталогов, что облегчает конкретную установку системы. Структура представляет из себя дерево каталогов, начинающееся с каталога ``/'', известного под названием "корневой каталог". Катало
ги ниже / относятся к числу важнейших подкаталогов: среди них /bin, /etc, /dev, и /usr. Эти каталоги в свою очередь содержат другие каталоги, которые содержат сис
темные конфигурационные файлы, программы и т.д.
В частности, каждый пользователь имеет домашний каталог, который выделяется пользователю для хранения его файлов. В вышеприведенном примере все файлы Larry (такие как cheat-sheet и history-final) содержались в домашнем каталоге Larry. Обычно пользовательски
й домашний каталог находится под каталогом /home и называется именем пользователя. Так домашний каталог Larry будет /home/larry.
На Рис. 3.2.8 представлено простое дерево каталогов. Оно даст вам некоторое представление о том, как организуется дерево каталогов в вашей системе.
Текущий рабочий каталог
Команды, которые вы даете shell, выдаю
тся из вашего текущего каталога. Вы можете думать о вашем рабочем каталоге, как о каталоге в котором вы находитесь. При начальном входе в систему вашим рабочим каталогом автоматически становится домашний каталог (в нашем случае /home/larry). При обращении к файлу вы можете обращаться к нему с учетом вашего местоположения, вместо того, чтобы указывать полный путь.
Вот например, у Larry есть каталог papers, а papers содержит файл history-final. Если Larry хочет посмотреть этот файл, он может использовать команду
/home/larry# more /home/larry/papers/history-final
Команда more просто показывает файл на экране п орциями. Поскольку текущий рабочий каталог Larry /home/larry, он вместо этого может обратиться к файлу с учетом своего текущего местоположения. Команда будет
/home/larry# more papers/history-finalТак что вы мо жете начинать имя файла (такого как papers/final) с символа, отличного от ``/'', система предполагает, что вы обращаетесь к файлу с учетом ваше го текущего рабочего каталога. Это называют относительным именем (а полный маршрут - полное (абсолютное) имя - т.е. путь от корня до данного имени).
В начало страницы
Обращение к домашнему каталогу
Оболочки (shell), т.е. программы, которые читают и выполняют команды пользователя, могут использоваться (одновременно в одной системе) разные. В большинстве систем Linux используются tcsh или bash при начальной регистрации в системе. В tcsh и bash вы можете обратиться к своему домашнему каталогу, используя тильду (``~''). Например, команда
/home/larry# more ~/papers/history-finalэквивалентна
/home/larry# more /home/larry/papers/history-finalСимвол ``~'' просто заменяет имя вашего домашнего каталога.
Вы также можете обратиться к домашнем у каталогу другого пользователя с помощью тильды. Имя ``~karl/letters'' будет интерпретировано shell, как ``/home/karl/letters'' (если /home/karl - домашний каталог для пользователя karl). Использование тильды упрощает обращение; не существует каталога с именем ``~'' - так что это просто "синтаксический сахар", который имеется в распоряжении shell.
Первые шаги в UNIX
Первая прогулка
Разглядывание содержимого каталогов
Создание новых каталогов
Копирование файлов
Перемещение файлов
Удаление файлов и каталогов
Рассматривание файлов
Получение оперативной помощи
Текущий рабочий каталог
Обращение к домашнему каталогу
Перед тем, как начать, важно заметить, что все имена файлов и команд чувствительны к большим и малым буквам (чего нет в системах типа MS-DOS). Например, команда make очень отличается от Make или MAKE. То же относится и к именам каталогов.
Первая прогулка
Теперь мы можем войти в систему и узнать, как обращаться к файлам и менять местоположение в файловой системе, чтобы упрощать свою жизнь в ней. Команда для перемещения по дереву каталогов - cd, (``change directory''). Вы скоро обратите внимание, что многие часто используемые команды Unix состоят из двух-трех букв. Формат команды cd:
cd <directory>где <directory> - имя каталога, в который вы желаете перейти. Как мы уже говорили, когда вы входите в систему, вы автоматически оказываетесь в своем домашнем каталоге. Если Larry желает двинуться ниже по дереву, он должен использовать команду
/home/larry# cd papers /home/larry/papers#Как видите, изменилась подсказка, отразив изменение местоположения (новый рабочий каталог). Теперь он в каталоге papers и может посмотреть на свой файл history-final с помощью команды
/home/larry/papers# more history-finalЧтобы вернуться назад из подкаталога papers, надо использовать команду
/home/larry/papers# cd .. /home/larry#(Обратите внимание на пробел между ``cd'' и ``..''). Каждый каталог содержит имя ``..'' , которое отсылает к родительскому (для данного каталога) каталогу. Также каждый каталог имеет имя ``.'', которое ссылается на него самого. Поэтому команда
/home/larry/papers# cd .никуда не переведет.
В команде cd вы можете использовать маршруты. Чтобы перейти в домашний каталог Карла, вы можете воспользоваться командой
/home/larry/papers# cd /home/karl /home/karl#Используя команду cd без аргументов вы из любого места дерева вернетесь в свой домашний каталог.
/home/karl# cd /home/larry#В начало страницы
Разглядывание содержимого каталогов
Òåïåðü âû
çíàåòå, êàê õîäèòü-áðîäèòü ïî êàòàëîãàì, íî âåðîÿòíî âîçíèêàåò âîïðîñ:"Íó è ÷òî ñ òîãî?" Ñàìî ïî ñåáå õîæäåíèå ïî êàòàëîãàì áåñïîëåçíî, äàâàéòå ïîçíàêîìèìñÿ ñ íîâîé êîìàíäîé ls. ls (LiSt) âûäàåò íà ýêðàí ïåðå÷åíü ôàéëîâ è êàòàëîãîâ (ïî óìîë÷àíèþ èç òåêóùåãî êàòàëîãà). Íàïðèìåð,
В общем, каждая команда UNIX может иметь несколько опций в дополнение к другим аргументам. Эти опции обычно записываются со знаком ``-'', как это было показано на примере ls -F. Опция -F сообщает команде ls, что необходимо выдать дополнительную информацию о типе файлов.
Если вы напишете в команде ls имя каталога, то она выдаст содержимое указанного каталога.