У меня есть входное значение ARGV из сценария bash, который либо (да), либо (нет). Мне нужно (да) или (нет) равное числовому значению (1) или (0), а выход на основе этого значения ARGV является числовым значением.Выбор переменных на основе ARGV
Моя попытка получить что-то вроде этого, чтобы работать: script.pl да &
my $VAR1= $ARGV[0];
my $yes=1;
my $no=0;
print $VAR1;
Вывод на печать: 1 (а не слово да)
К сожалению, мой пример кажется явно глупо, потому что $ VAR1, очевидно, все, что я использовал в качестве значения ARG. Так что я хочу сделать, это взять ARGV и проверить его на список предустановленных значений, а затем вывести значение этого пресета.
Спасибо,
** Я Perl нуб. Мое извинение, если я не объясню это правильно.
Вы можете попробовать использовать хэш, например: 'perl -E '% input_map = (yes => 1, no => 0); скажем $ input_map {+ shift} 'yes' –
Perl -E запускает его из командной строки. Как я могу написать это в своем скрипте как ARGV? Переменная передается из другого скрипта, и я делаю что-то более сложное, просто да или нет в perl-скрипте. Я просто использую это как пример из соображений безопасности. Если я знаю, как взять значение ARGV и проверить его на список предустановленных значений, значит, выход является предустановленным значением, тогда мне хорошо идти оттуда. – Alby
Привет, Alby. «Сдвиг» в моем примере - это ярлык для 'shift @ ARGV' –