Сценарий оболочки: как использовать getopts для получения последних аргументов и необработанных аргументов - PullRequest
0 голосов
/ 09 апреля 2011

Существует программа с именем cower . ( cower - это загрузчик Archlinux AUR.)

cower -[udhsc] target

Я пишу сценарий оболочки с именем xcower .

xcower -[Syudhsc] target1 target2 target3 ...

xcower принять 2 дополнительных параметра S и y. и передать оставшиеся аргументы, чтобы съежиться. Я не знаю, как получить аргументы и цели.

Кстати, xcower Цели - установить пакеты AUR из новой установленной команды Arch в 1.

1 Ответ

2 голосов
/ 09 апреля 2011

вы можете попробовать использовать shift и комбинацию OPTIND переменной, например (не ответить)

shift $(($OPTIND - 1))

Из ссылки на bash

OPTIND Индекс следующего аргумента обрабатываться встроенным в getopts команда (см. ОБРАБОТКА КОМАНД SHELL ниже).

смещение [n] Позиционные параметры из n + 1 ... переименованы до $ 1 .... Параметры представлены числа от $ # до $ # - n + 1 снята с охраны

...