14.4.1. Применение в сценариях позиционных параметров

14.4.1. Применение в сценариях позиционных параметров

Воспользуемся приведенным выше примером в следующем сценарии.

$ pg param

#!/bin/sh # параметры

echo "This ls the script name : $0"

echo "This ls the first parameter : $1"

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