Запуск сценария Perl в Linux с помощью ForkManager - PullRequest
0 голосов
/ 16 октября 2018

Я пытаюсь запустить Perl-скрипт на моем vps-сервере, который получает заголовок Ip text-file, где text-file - список ips.но я получаю эту ошибку:

 Use of uninitialized value $args[0] in pattern match (m//) at /usr/local/share/perl5/Parallel/ForkManager.pm line 73.
Missing required arguments: max_proc at ./get line 12.

, где строка 73 - if ( $args[0] =~ /^\d+$/ ) {, а строка 12 - my $forkmanager = new Parallel::ForkManager->new("200");

Мой вопрос о том, как исправить эту ошибку?любая помощь, пожалуйста

1 Ответ

0 голосов
/ 16 октября 2018

Мы не можем узнать, что $args[0] содержит (или не содержит).Пожалуйста, предоставьте полный фрагмент кода, где ошибка воспроизводима.

Что касается ошибки ForkManager: во-первых, попробуйте создать экземпляр объекта ForkManager с его более новыми аргументами в стиле Moose, т.е.my $forkmanager = Parallel::ForkManager->new(max_procs => 200);

Также обратите внимание, что использование ключевого слова new не рекомендуется.Начиная с perlobj :

За пределами дескриптора файла использование этого синтаксиса не рекомендуется, поскольку оно может сбить с толку интерпретатор Perl.Подробнее см. Ниже.

...