Утилиты

Мы давно говорили, что шелл в первую очередь интегратор. Тут есть два замечания:

Чем хорошо первый вариант: если вам встретилась задача, например, выковырять третью колонку из файла. Вы порылись документации, нашли программу cut. И тогда cut -d\ -f3 file. Задача решена. И, поскольку задача встала один раз, то она возникнет ещё и ещё, и придётся решать подобные задачи. И вам надо запоминать не 2000 команд, а 1. И запомнить потому, что вероятнее всего вам придётся ею пользоваться. Тогда вы запоминаете те программы, которые вам нужно пользоваться.

Второй вариант --- берёте любимй язык программирования, делаете на нём велосипед. И может иногда оказаться, что программа окажется короче и лучше, например, то же на авк: awk '{ print $3 }' file.

По определённым присчинам летор предпочитает первое. Но, понятно, что поиск не до посинения, чем более специфична и редка задача, тем больше смысла писать программу.

Команды

Родового порядка замечания: такие сборники утилит, которые полезны, они собраны в пакеты, которые оканчиваются обычно на *utils или *tools. Есть coreutils, без каоторых тяжело. Помимо них, есть textutils, buildutils... Есть специфичные сборки.

Теперь немножко списковых структур:

Мы сейчас возвр. к идеализированной картине, когда все объекты представлены в виде файлов, и для упр. системой дост. иметь утилиты, которые работают с двумя видами сущностей. Именно по этой причине, большая чать того, о чём мы разг., входит либо в coreutils, либо fileutils, textutils, findutils

Идея в том, что обычно файл приложится. И если файл не приложится, то это значит, что надо посмотреть на файл. Осн. идея следующ:

В альте есть пакет patchutils, в котом есть инструменты для редактирования патчей, сравнения патчей.

Оставшиеся 1983 программы лектор опускает.


Сведения о ресурсах

Готовность (%)

Продолжительность (ак. ч.)

Подготовка (календ. ч.)

Полный текст (раб. д.)

Предварительные знания

Level

Maintainer

Start date

End date

0

1

1

1

1

ArtemSerebriyskiy, ОльгаТочилкина, VsevolodKrishchenko


CategoryLectures CategoryCmc CategoryUneex

LecturesCMC/LinuxShell2008/11/02Utilities (last edited 2008-07-24 22:11:29 by eSyr)