$ /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
Перейти в него
$ pwd
Убедиться, что вы попали куда надо
/usr/you/book
...
Работа над книгой (прошло несколько минут)
$ cd ..
Подняться на один уровень в файловой системе
$ pwd
/usr/you
$
Обозначение '..'
относится к "родителю" того каталога, с которым вы работаете в данный момент, а именно к каталогу, расположенному на один уровень ближе к корню. Обозначение '.'
является синонимом текущего каталога.
$ cd
Возврат в личный каталог
Команда вернет вас в ваш начальный каталог, т.е. в каталог, в который вы попадаете при входе в систему.
После того как книга опубликована, можно почистить каталог. Чтобы удалить каталог book
, удалите все содержащиеся в нем файлы (быстрый способ выполнения этой операции мы вскоре покажем), затем перейдите в родительский каталог для book
и задайте команду
$ rmdir book
Команда rmdir
удаляет только пустые каталоги.
Когда система выдает приглашение $
и вы вводите команды для выполнения, вы имеете дело не с ядром самой системы, а с неким посредником, называемым интерпретатором команд, или shell
. Это обычная программа, подобная date
или who
, хотя она может делать удивительные вещи. Тот факт, что программа shell
находится между вами и ядром, дает реальные выгоды, и некоторые из них мы вам укажем. Применение программы-посредника обеспечивает три главных преимущества:
• сокращенные имена файлов: можно задать целое множество файлов в качестве аргументов команде, указав шаблон для имен: shell
будет искать файлы, имена которых соответствуют заданному шаблону;
• переключение ввода-вывода: вывод любой программы можно направить в файл, а не на терминал, ввод можно получать из файла, а не с терминала. Ввод и вывод можно даже передать другим программам;
• создание собственной среды: можно определить свои собственные команды и правила сокращений.
Сокращенное имя файла
Начнем с шаблонов имен файлов. Допустим, вы вводите обширный документ, наподобие книги. Логически он разбивается на множество частей, аналогично главам и разделам. И физически его следует разбить на части, поскольку затруднительно редактировать большие файлы. В этом случае для печати всего текста нужно указать ряд файлов. У вас могут быть отдельные файлы для каждой главы с именами ch1
, ch2
и т.д. Если каждая глава разбита на разделы, вы можете создать файлы с именами
ch.1
ch.2
ch.3
...
ch2.1
ch2.2
...
что и используется в нашей книге. При систематизированном именовании можно указать с первого взгляда, в какой ряд файлов попадает данный файл. Как быть, если вы захотите напечатать книгу? Можно задать
$ pr ch1.1 ch1.2 ch1.3...
но вы быстро устанете вводить имена файлов и начнете делать ошибки. Именно здесь приходит на помощь сокращенное имя файла. Если задать
$ pr ch*
интерпретатор shell
воспримет *
как любую последовательность символов, поэтому ch*
является шаблоном, под который подходят все имена файлов из текущего каталога, начинающиеся на ch
. Интерпретатор shell
создаст список в алфавитном порядке [3] Порядок, конечно, не строго алфавитный, прописные буквы предшествуют строчным. Чтобы узнать порядок, используемый в программе sort , см. ascii(7) .
и передаст его программе pr. Команда pr никогда "не узнает" * ; выбор по шаблону, который shell производит в текущем каталоге, порождает список строк, передаваемых pr
.
Читать дальше
Конец ознакомительного отрывка
Купить книгу