Я пытаюсь управлять многочисленными аргументами, указанными пользователем при выполнении команды. До сих пор я пытался ограничить дизайн своего скрипта управлением аргументами как флагами, которыми я легко могу управлять с помощью Getopt :: Long следующим образом:
GetOptions ("a" => \$a, "b" => \$b);
Таким образом, я могу проверить, были ли указаны a или b, а затем выполнить соответствующий код / функции.
Однако теперь у меня есть случай, когда пользователь может указать две переменные аргумента следующим образом:
command -a black -b white
Это нормально, но я не могу найти хороший способ определить, указан ли -a или -b первым. Поэтому я не знаю, присвоена ли переменная-аргумент $ARGV[0]
или $ARGV[1]
после того, как я выполнил GetOptions ("a" => \$a, "b" => \$b);
.
Как определить, какая переменная связана с -a
, а какая с -b
в приведенном выше примере?