Читаем Linux и UNIX: программирование в shell. Руководство разработчика. полностью

# все параметры

echo "This ls the script name : §0"

echo "This ls the first parameter : $1"

echo "This is the second parameter : $2"

echo "This ls the third parameter : $3"

echo "This ls the fourth parameter : $4"

echo "This ls the fifth parameter : $5"

echo "This ls the sixth parameter : $6"

echo "This ls the seventh parameter : $7"

echo "This ls the eighth parameter : $8"

echo "This ls the ninth parameter : $9"

echo "The number of arguments passed : $#"

echo "Show all arguments : $*"

echo "Show me my process ID : $$"

echo "Show me the arguments in quotes :" "$@"

echo "Did my script go with any errors : $?"

$ param Merry Christmas Mr Lawrence

This ls the script name : ./param

This ls the first parameter : Merry

This ls the second parameter : Christmas

This ls the third parameter : Mr Lawrence

This ls the fourth parameter :

This ls the fifth parameter :

This ls the sixth parameter :

This ls the seventh parameter ;

This ls the eighth parameter :

This ls the ninth parameter :

The number of arguments passed ;3

Show all arguments : Merry Christmas Mr Lawrence

Show me my process ID : 630

Show me the arguments in quotes :"Merry" "Christmas" "Mr Lawrence"

Did my script go with any errors :0

При выводе данных с помощью специальных параметров можно получить много полезной информации о сценарии. Существует возможность проверить, какое число аргументов передается, а также идентификатор процесса этого сценария в том случае, если нужно уничтожить сценарий.

14.4.4. Код завершения последней команды

Обратите внимание, что параметр $? возвращает значение 0. Этот прием можно использовать во всех командах или сценариях, если необходимо выяснить, успешно ли выполнена последняя команда. С помощью этой информации можно продолжить работу со сценарием. Если возвращается значение 0, значит все идет успешно; значение 1 означает появление ошибки.

Ниже приводится пример. Сначала файл копируется в каталог /tmp и с помощью параметра $? проверяется результат.

$ cр ok.txt /tmp

$ echo $?

0

Скопируем файл в несуществующий каталог:

$ cp ok.txt /usr/local/apps/dsf

cp: cannot create regular file '/usr/local/apps/dsf': No such file or

directory

$ echo $?

1

При проверке состояния возврата с помощью параметра $? отображается 1. Это свидетельствует о наличии ошибок. Появляется сообщение о системной ошибке "cp: cannot…", поэтому не требуется проверять код завершения последней команды. Сценарии функционируют с помощью системных команд. Обычно пользователь не заинтересован в отображении большого количества значений. Поэтому выходной поток перенаправляется в системную корзину /dev/null Каким образом пользователь узнает, что последняя команда была успешной? С помощью кода завершения последней команды. Рассмотрим пример, иллюстрирующий изложенный материал.

$ cp ok.txt /uer/local/appe/dsf >/dev/null 2>&1

$ echo $?

1

Если данные вывода, включая сообщения об ошибках, перенаправить в системную корзину, невозможно установить, выполнялась ли последняя команда. Но благодаря применению параметра $?, который возвращает значение 1, становится известно, что при выполнении команды были допущены ошибки.

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

$ cp ok.txt /usr/local/apps/dsf >/dev/null 2>&1

$ cp_status=$?

$ echo $cp_status

1

14.5. Заключение

Перейти на страницу:

Похожие книги

Библия БДСМ. Полное руководство
Библия БДСМ. Полное руководство

Первое исчерпывающее пособие по БДСМ. Уникальный иллюстрированный гид для тех, кому просто любопытно, и для тех, кто уже в Теме. В этой книге известные педагоги и профессионалы ответили на все важные вопросы и раскрыли все интересующие вас темы: основные принципы, ролевые игры, господство, подчинение, фистинг, садизм, мазохизм, связывание, физическое воздействие, тантра необычного секса и многое другое. Если вы хоть раз задумывались о БДСМ, значит, эта книга то, что вам нужно. Она способна обучить, вдохновить и бросить вызов даже опытным игрокам. Не бойтесь экспериментировать, и добро пожаловать в мир сексуальных приключений!

Тристан Таормино , Литагент «5 редакция»

Зарубежная образовательная литература, зарубежная прикладная, научно-популярная литература / Руководства / Дом и досуг / Образовательная литература / Словари и Энциклопедии
Путь менеджера от новичка до гуру
Путь менеджера от новичка до гуру

«Путь менеджера» – это сборник лучших материалов online-сообщества (learning community) менеджеров E-xecutive за пять лет (2001–2005), которые впервые публикуются offline. Возможно, это книга с самым большим количеством авторов: 20 сотрудников E-xecutive и более 200 участников Сообщества писали, выбирали и редактировали материалы.Книга представляет собой «карту местности» для менеджера, стремящегося найти кратчайший путь к успеху, на которой отображены открытия лучших «картографов» – всемирно признанных бизнес-гуру и успешных российских топ-менеджеров. Эта книга о том, чем в действительности живут менеджеры, о чем не пишут в учебниках, и предназначается она для тех, кто стремится не только к карьерному успеху, но и к настоящей эффективности, личностному и профессиональному развитию.

Сообщество менеджеров E-xecutive

Руководства / Словари и Энциклопедии