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

echo "This ls 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 : S6"

echo "This ls the seventh parameter : $7"

echo "This ls the eighth parameter : $8"

echo "This ls the ninth parameter : $9"

$ param Did You See The Full Moon

This ls the script name : ./param

This ls the first parameter : Did

This ls the second parameter : You

This ls the third parameter : See

This ls the fourth parameter : The

This ls the fifth parameter : Full

This ls the sixth parameter : Moon

This ls the seventh parameter :

This ls the eighth parameter :

This ls the ninth parameter :

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

$ pg param2 .

#!/bin/sh

echo "Hello world this ls $0 calling"

$ param2

Hello world this ls ./param2 calling

Заметьте, что параметр $0 также позволяет получить путь доступа к текущему каталогу. Для получения названия сценария предварите параметр $0 командой

basename.

$ pg param2

#!/bin/sh

echo "Hello world this ls `basename $0` calling"

$ param2

Hello world this ls param2 calling

14.4.2. Передача параметров в системные команды

Параметры можно передавать внутри сценария в системную команду. В следующем примере используется команда find . Параметр $1 указывает имя искомого файла.

$ pg findfile

#!/bin/sh

# findfile

find / -name $1 -print

$ findfile passwd

/etc/passwd

/etc/uucp/passwd

/usr/bin/passwd

Ниже приводится другой пример. В виде параметра $1 файл user‑id передается команде grep; команда grep использует эти сведения для поиска файла passwd, где содержится полное имя пользователя.

$ pg who_is

#!/bin/sh

# who_is

grep $1 passwd | awk -F: {print $4}'

$ who_is seany

Seany Post

14.4.3. Специальные параметры

Теперь, когда вы изучили, как получить доступ к параметрам shell–сценариев и применять их, было бы полезным узнать об этих параметрах больше. Рассмотрим, каким образом сценарий применяет специальные параметры. Существует семь специальных параметров, которые представлены в табл. 14.2.

Таблица 14.2. Специальные параметры интерпретатора shell

$#Число аргументов, передаваемых сценарию
$*В отдельной строке отображаются все аргументы, которые передаются сценарию. Здесь может содержаться более девяти параметров, в отличие от позиционных параметров
$$Текущий идентификатор PID для выполняющегося сценария
$!Идентификатор PID для последнего процесса, который выполняется в фоновом режиме
$@Означает то же самое, что и параметр $#, но, если параметр заключен в кавычки, то и каждый аргумент отображается в кавычках
$-Отображение текущих опций интерпретатора команд; аналогично применению команды set
$?Показывает код завершения последней команды. Значение 0 свидетельствует об отсутствии ошибок, любое другое значение -o, их наличии

Преобразуем сценарий param, применяя некоторые специальные параметры. Затем выполним сценарий.

$ pg param

#!/bin/sh

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

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

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

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

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

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

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

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

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