dimayakovlev.ru


Вывод всех параметров Shell скрипта

Отвечаю на вопрос о том, как вывести все параметры, переданные Shell скрипту.

#!/bin/sh

I=1
for PARAM in "$@"; do
  echo "\$$I=$PARAM"
  I=$(($I + 1))
done

Вариант для любителей однострочников выглядит так.

#!/bin/sh

I=1; for PARAM in "$@"; do echo "\$$I=$PARAM"; I=$(($I + 1)); done

Результат выполнения скрипта.

Вывод всех параметров скрипта в GNOME Terminal

Важно! Не смотря на простоту скрипта, в нём можно допустить ошибку: если не взять в кавычки $@, то строка, переданная параметром скрипту, будет разбита на отдельные слова по пробелам.

Вывод всех параметров скрипта в GNOME Terminal с ошибкой - строка разбита на отдельные словам