обратные пометки не возвращают никакого значения в perl - PullRequest
0 голосов
/ 16 февраля 2012

Я написал Perl-скрипт в среде Cygwin. Внутри я использую обратные метки для выполнения другой программы, и возвращаемое значение присваивается переменной. Он работал нормально, прежде чем я обновил некоторые пакеты в cygwin две недели назад. Теперь обратные пометки не возвращают никакого значения. Есть мысли?

1 Ответ

4 голосов
/ 16 февраля 2012

Попробуйте проверить значение $ ?.Он содержит код возврата последней выполненной внешней команды, но он перегружен, чтобы содержать дополнительную информацию, такую ​​как сигнал, который убил команду, и был ли дамп ядра, и т. Д.

Фактический код возврата может бытьполучено через

my $return_code = $? >> 8;

Если оно равно нулю, команда выполнена успешно, если нет, то это состояние ошибки, с которой вышла команда (с которой, например, int main () возвращает C).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...