У меня был 1 скрипт на perl, в котором мы пишем пару подпрограмм. Пример:
# Try_1.pl main(); sub main{ --- --- check(); } check { -- --}
Теперь я написал другой скрипт Try_2.pl, в котором я хочу вызвать функцию проверки скрипта perl Try_1.pl.
Try_2.pl
Try_1.pl
Звучит так, будто вы хотите создать модуль.Try_1.pm ( Edit: extension note) должен иметь следующую форму:
package Try_1; use base 'Exporter'; our @EXPORT = qw(check); sub check { } 1;
А затем Try_2.pl должен получить этот код:
use Try_1 qw(check);
Это то, что вы ищете?
Если вы не используете модули (расширение .pm), а вместо этого используете библиотеки (расширение .pl):
.pm
.pl
require 'Try_1.pl'; check();
Убедитесь, что оба файла Try_1.pl и Try_2.pl находятся втот же каталог.
Вам может понадобиться
test1.pl:
use Routines; { my $hello = "hello123"; hello( $hello ); # ... }
test2.pl:
package Routines; sub hello { my $hello = shift; print "$hello\n"; } 1;
"run" ответ проверенной работы, но нужно вызвать как "Try_1 :: check ()". В противном случае выведите ошибку «Неопределенная подпрограмма & main :: check ()».