Server for Information Technologies Сервер поддерживается
Центром Информационных Технологий
(095) 932-9212, 932-9213, 939-0783
E-mail: info@citforum.ru
Сервер содержит море(!) аналитической информации CIT Forum CD-ROM

GETOPT(1)

ИМЯ
getopt - Выполняет синтаксический анализ командных опций.

СИНТАКСИС

  set -- `getopt optstring $*`

ОПИСАНИЕ
Команда getopt используется для того, чтобы проверять и разделять опции в командных строках для последующего их синтаксического анализа процедурами интерпретатора shell. Параметр optstring является строкой распознаваемых букв опций (см. описание getopt(2)). Если за буквой следует двоеточие, то считается, что эта опция имеет аргумент, который может отделяться, а может и не отделяться от нее пустым пространством. Специальная опция -- используется для указания конца списка опций. Команда getopt будет либо сама помещать -- в аргументах в конце опций, либо распознавать эти знаки, если они используются заданным образом. Аргументы интерпретатора shell ($1 $2 ...) переустанавливаются таким образом, что каждой опции предшествует тире (-) и она входит в свой собственной аргумент интерпретатора shell; каждый аргумент опции также участвует в своем собственном аргументе интерпретатора shell.

ПРИМЕРЫ
Следующий фрагмент кода программы показывает, каким образом обрабатываются аргументы для команды, которые могут использовать опции a и b, и опцию о, для которой требуется аргумент:

 set - - `getopt abo: $*`
 if [ $? !=0 ]
 then
   echo $USAGE
   exit 2
 fi
 for i in $*
 do
   case $i in
   -a | -b) FLAG=$i; shift;;
   -o)   OARG=$2;  shift; shift;;
   - -)   shift; break;;
   esac
 done
Этот код программы будет иметь вид любого из следующих эквивалентных представлений:
 cmd -aoarg file file
 cmd -a -o arg file file
 cmd -oarg -a file file
 cmd -a -oarg -- file file

СМ. ТАКЖЕ
sh(1), getopt(2).

ДИАГНОСТИКА
Команда getopt выводит сообщение об ошибке на устройство диагностического вывода в случае, если она встречает буквы опций, не включенные в строку optstring.

ЗАМЕЧАНИЕ
Синтаксис, заданный для этой утилиты, предполагает, что пользователь имеет интерпретатор shell sh(1).

Comments: info@citmgu.ru
Designed by Andrey Novikov
Copyright © CIT
Обновлено: 13.03.2015