My-library.info
Все категории

Брайан Керниган - UNIX — универсальная среда программирования

На электронном книжном портале my-library.info можно читать бесплатно книги онлайн без регистрации, в том числе Брайан Керниган - UNIX — универсальная среда программирования. Жанр: Программное обеспечение издательство -, год 2004. В онлайн доступе вы получите полную версию книги с кратким содержанием для ознакомления, сможете читать аннотацию к книге (предисловие), увидеть рецензии тех, кто произведение уже прочитал и их экспертное мнение о прочитанном.
Кроме того, в библиотеке онлайн my-library.info вы найдете много новинок, которые заслуживают вашего внимания.

Название:
UNIX — универсальная среда программирования
Издательство:
-
ISBN:
-
Год:
-
Дата добавления:
16 сентябрь 2019
Количество просмотров:
371
Текст:
Ознакомительная версия
Читать онлайн
Брайан Керниган - UNIX — универсальная среда программирования

Брайан Керниган - UNIX — универсальная среда программирования краткое содержание

Брайан Керниган - UNIX — универсальная среда программирования - описание и краткое содержание, автор Брайан Керниган, читайте бесплатно онлайн на сайте электронной библиотеки My-Library.Info
В книге американских авторов — разработчиков операционной системы UNIX — блестяще решена проблема автоматизации деятельности программиста, системной поддержки его творчества, выходящей за рамки языков программирования. Профессионалам открыт богатый "встроенный" арсенал системы UNIX. Многочисленными примерами иллюстрировано использование языка управления заданиями shell.Для программистов-пользователей операционной системы UNIX.

UNIX — универсальная среда программирования читать онлайн бесплатно

UNIX — универсальная среда программирования - читать книгу онлайн бесплатно, автор Брайан Керниган
Конец ознакомительного отрывкаКупить книгу

Ознакомительная версия.

$ tail -1 poem

and greater still, and so on

$

Команду tail можно использовать и для вывода файла, начиная с указанной строки:

$ tail +3 filename

файл будет печататься с третьей строки (обратите внимание на естественное изменение знака у аргумента).

Последняя пара команд предназначена для сравнения файлов. Допустим, имеется вариант файла poem с именем new_poem:

$ cat poem

Great fleas have little fleas

 upon their backs to bite 'em,

And little fleas have lesser fleas,

 and so ad infinitum.

And the great fleas themselves, in turn,

 have greater fleas to go on;

While these again have greater still,

 and greater still, and so on.

$ cat new_poem

Great fleas have little fleas

 upon their backs to bite them,

And little fleas have lesser fleas,

 and so on ad infinitum.

And the great fleas themselves, in turn,

 have greater fleas to go on;

While these again have greater still,

 and greater still, and so on.

$

Между этими двумя файлами немного различий; на самом деле, нужно постараться, чтобы найти их. Здесь помогут команды сравнения файлов. Команда cmp находит первое место, где файлы различаются:

$ cmp poem new_poem

poem new_poem differ: char 58, line 2

$

Как видите, файлы различаются во второй строке, но неизвестно, в чем состоит их различие, и, кроме того, не отмечены другие различия. Вторая команда сравнения файлов diff сообщает обо всех строках, которые изменены, добавлены или удалены:

$ diff poem new_poem

2c2

< upon their backs to bite 'em,

---

> upon their backs to bite them,

4c4

< and so ad infinitum.

---

> and so on ad infinitum.

$

Итак, вторая строка первого файла poem изменена и отличается от второй строки второго файла new_poem. То же самое мы наблюдаем и в отношении четвертой строки.

Вообще, команда cmp применяется в тех случаях, когда вы хотите убедиться, что два файла действительно имеют одинаковое содержимое. Это быстродействующая команда, которая работает с любыми (не только с текстовыми) файлами. Командой diff следует пользоваться, если вы предполагаете, что файлы различны, и хотите узнать, в каких именно строках они различаются. Команда работает только с текстовыми файлами.

Сводка команд файловой системы

В табл. 1.1 дана краткая сводка описания команд, которые были рассмотрены выше.

ls Вывод списка имен файлов текущего каталога ls filenames Вывод списка только поименованных файлов ls -t Вывод списка, упорядоченного по времени создания файла (сначала более новые) ls -l Вывод данного списка, содержащего большую информацию; допустимо также ls -lt ls -u Вывод списка, упорядоченного по времени последнего использования; допустимо также ls -lu, ls -lut ls -r Вывод списка с обратным порядком; допустимо также ls -rt, ls -rit и т.п. ed filename Редактирование поименованного файла cp file1 file2 Копирование file1 в file2, старое содержимое file2 пропадает, если оно было mv file1 file2 Переименование file1 в file2; старый file2 исчезает, если он был rm filenames Удаление поименованных файлов безвозвратно cat filenames Вывод содержимого поименованных файлов pr filenames Печать содержимого файлов с заголовком, по 66 строк на странице pr -n filenames Печать в n столбцов pr -m filenames Печать поименованных файлов в несколько столбцов wc filenames Подсчет числа строк, слов и символов для каждого файла ws -l filenames Подсчет числа строк для каждого файла grep pattern filenames Вывод строк, соответствующих шаблону grep -v pattern files Вывод строк, не соответствующих шаблону sort filenames Сортировка файлов по строкам в алфавитном порядке tail filename Вывод 10 последних строк файла tail -n filename Вывод n последних строк файла tail +n filename Вывод файла, начиная со строки n cmp file1 file2 Вывод места первого расхождения diff file1 file2 Вывод всех расхождений между файлами

Таблица 1.1: Сводка команд файловой системы

1.3 Продолжаем изучать файлы: каталоги

Система отличит ваш файл с именем junk от "нужного" файла с тем же именем. Это обеспечивается за счет группировки файлов в каталоги подобно тому, как книги помещаются на полках в библиотеке, так что файлы могут иметь одинаковые имена в разных каталогах без конфликтов.

В общем случае каждый пользователь имеет свой личный каталог, иногда называемый начальным каталогом, который содержит только принадлежащие ему файлы. Входя в систему, вы оказываетесь в вашем личном (начальном) каталоге. Можно сменить каталог, с которым вы работаете (его часто называют рабочим или текущим каталогом), но ваш личный каталог останется тем же. Если не предпринять специальных действий, новый файл, создаваемый вами, попадает в текущий каталог. Так как вначале текущим является личный каталог, ваш файл никак не связан с файлом, имеющим то же имя, в чужом каталоге.

Каталог может содержать и другие каталоги как обычные файлы. Естественным способом представления такой организации каталогов служит дерево файлов и каталогов. В процессе обхода дерева — от корня вдоль нужных ветвей — можно найти любой файл системы. Можно поступить и наоборот: начать в произвольном месте и двигаться по направлению к корню.

Рассмотрим первый способ. Основным нашим средством будет команда pwd ("print working directory" — печать рабочего каталога), которая выведет имена файлов каталога, с которым вы работаете:

$ pwd

/usr/you

$

Команда выведет сообщение о том, что вы находитесь в каталоге you, а сам каталог — в каталоге usr, который в свою очередь находится в корневом каталоге, традиционно обозначаемом как '/'. Символ '/' разделяет компоненты имени: каждый компонент ограничен по длине 14 символами. Во многих системах каталог /usr содержит имена каталогов всех пользователей. (Даже если ваш личный каталог не /usr/you, команда pwd выдаст нечто аналогичное, так что вы сможете следить за последующими примерами.) Введя

$ ls /usr/you

вы получите тот же самый список файлов, который выдает только ls. Если в команде ls нет аргументов, то она выводит содержимое текущего каталога; если же ей присвоить имя каталога, то она выдает содержимое указанного каталога. Далее вводите

$ ls /usr

Это приведет к появлению длинного списка имен, среди которых есть и ваш начальный каталог you.

На следующем шаге попытайтесь распечатать сам корневой каталог. В результате получите ответ, подобный следующему:

$ ls /

bin

boot

dev

etc

lib

tmp

unix

usr

$

(Пусть вас не смущает то, что символ '/' имеет два назначения одновременно: имя корневого каталога и разделитель в именах файлов.) Большую часть приведенного списка составляют имена каталогов, но unix на самом деле является файлом, содержащим в готовом к выполнению виде ядро системы UNIX (более подробно об этом см. в гл. 2).

Ознакомительная версия.


Брайан Керниган читать все книги автора по порядку

Брайан Керниган - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки My-Library.Info.


UNIX — универсальная среда программирования отзывы

Отзывы читателей о книге UNIX — универсальная среда программирования, автор: Брайан Керниган. Читайте комментарии и мнения людей о произведении.

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.