комманды

Команды и спецификация модулей запуска для скрытых программ GNOME

В этой секции Приложения перечислены многие программы, которые установлены в вашей системе, но не отражаются в Главном меню GNOME. Вы можете запустить любое из этих приложений, набрав команду в окне Терминала, или зайдя в Главное меню и выбрав запуск программ Run Program, а затем набрав команду в открывшемся окне.

Если вам приглянется какая-нибудь из этих программ, вы, возможно, захотите создать свой модуль запуска (как вы это делали в Главе 3), чтобы удобнее было до них добираться в следующий раз.

Игры

Kolor lines

KDE версия игры Lines (Разметка) с огромными ...

Приложение А - Спецификация модулей запуска

Во время работы с этой книгой вы устанавливали много приложений, для которых модули запуска не создаются автоматически. Это, особенно, относиться к программам, которые вы компилировали из исходных текстов. Для вашего удобства я собрал команды и расположение иконок для этих приложений без модулей запуска в таком порядке, чтобы вы смогли создать эти модули самостоятельно (как вы это делали в Главе 3).

Использование awk с другими командами и с shell

Наибольшего эффекта awk достигает при использовании с другими программами. В этом подразделе обсуждаются некоторые способы взаимодействия программ awk с другими командами.

10.25.1. Функция system

Встроенная функция system (command_line) выполняет команду "command_line", которая может быть строкой, вычисляющей, например, sprintf. Функция system возвращает состояние выполненной команды.

Например:

             $1 == "#include" { gsub (/[<>"]/, $2;
             system ("cat " $2}

вызывает ...

Аргументы командной строки

В программе awk могут использоваться аргументы командной строки: массив ARGV содержит элементы ARGV[0], ... ARGV[ARGC-1], где ARGC - счетчик, ARGV[0] - имя программы (в общем случае - awk), остальное - любые поддерживаемые аргументы, исключая программы и необязательные аргументы).

Следующая командная строка содержит программу awk, отражающую аргументы, которые появляются после имени программы:

        awk '
        BEGIN  {
                for ( i = 1; i < ARGC; i++ )
                     printf "%s ", ARGV[i]
                ...

Функция getline

Способность awk автоматически разбивать вводной файл на записи длиной более чем одна строка, не отвечает требованиям некоторых задач. Например, если записи разделены не пустыми строками, а чем-нибудь другим, то установка RS в ноль не работает. В таком случае программа должна управлять разбиением каждой записи на поля. Здесь дано несколько советов.

Функция getline может быть использована для чтения ввода либо из текущего вводного файла, либо из файла или канала, перенаправленного аналогично printf.

getline вызывает следующую вводную запись и ...

Многострочные записи

Обычно записи разделяются символами новой строки, так что каждая строка яавяется записью. Такой порядок можно изменить. Если пременная RS - разделитель встроенных записей - установлен в значение "пустая строка", как в:

	BEGIN { RS = "" }

то записи вводного файла могут занимать несколько строк. Последовательность пустых строк разделяет записи. Для обработки многострочных записей в общем случае может использоваться:

	BEGIN { RS = ""; FS = "\n" }

установка в качестве разделителя записи ...

Вывод

Операторы print и printf являются простейшими конструкциями, которые генерируют вывод. Оператор print используется для образования просто вывода; printf - для форматируемого вывода. Подобно shell awk позволяет вам перенаправлять вывод в файл или в канал.

10.20.1. Оператор print

Оператор:

	print expr1, rxpr2, ..., exprn 

печатает строки каждого выражения, разделенные при помощи разделителей полей и следующими за ними разделителями записей.

Оператор:

	print 

является сокращенной формой ...

Простые действия

В этом подразделе описаны встроенные и определенные пользователем переменные и функции простых действий.

10.4.1. Встроенные переменные

Кроме чтения вводного файла и разбиения на поля, awk считает число считанных записей и число полей внутри текущей записи. Вы можете использовать эти счетчики в программе awk. Переменная NR - это номер текущей записи, NF - число полей в записи. Так программа:

	{print NR, NF}

печатает номер каждой строки и число полей в этой записи. А
программа:

	{print NR, $0}

печатает каждую запись с ...

Использование shell переменных

Несколько переменных, зарезервированных shell, используются в файле .profile.

Рассмотрим 4 основные переменные:

HOME -
эта переменная дает имя пути вашего регистрационного
справочника. С помощью команды cd перейдите в него и
введите:
	pwd<CR>

Теперь введите:

	echo $HOME<CR>
$HOME -
это аргумент, используемый командой cd. Если вы не
указывали справочник, то cd переместит вас в $HOME;
PATH -
эта переменная дает путь ...

Отладка программы

Для нахождения и корректировки ошибок вам могут понадобиться две опции команды sh:

купить коляску трансформер

sh -v shellprogramname
печатает вводимые shell строки, как если бы они
были прочитаны системой;
sh -x shellprogramname
печатает команды и их аргументы по мере их
выполнения.

Для примера создадим shell программу, которая содержит ошибку:

        $ cat bug<CR>
        today=`date`
        echo enter person
        read person
        mail $1
        $person
        When you log off once into my office ...
Ленты новостей