Нет, не пишите сценарий оболочки. У Perl уже есть прекрасный способ сделать это. Правильный способ сделать это - создать CPAN-готовый дистрибутив, используя обычный набор инструментов. Часть этого объясняется в perlnewmod , perlmodstyle и perlmodinstall .
Для минимального рабочего примера создайте макет каталога следующим образом:
.
├── Build.PL
├── README
└── script
└── abuscript.pl
В файле Build.PL
введите:
use 5.000;
use Module::Build qw();
Module::Build->new(
module_name => 'abuscript',
dist_version => '1.000',
dist_author => 'abubacker <abubacker@example.com>',
dist_abstract => 'describe what the script does in one sentence',
configure_requires => {
'perl' => '5.000',
},
requires => {
'JSON::Any' => 0,
},
)->create_build_script;
Измените данные в соответствии с вашими целями.
В файле README
введите несколько инструкций по установке, например:
To install this module, run the following commands:
perl Build.PL
./Build install
Как только вы закончите со всем этим, вы запустите:
perl Build.PL
./Build manifest
./Build dist
Это приведет к .tar.gz
архиву, который вы будете распространять. Попросите пользователей установить его, как любой другой модуль CPAN, или, если они не знают, что это значит, они должны прочитать README.
Если у вас есть время, я рекомендую преобразовать ваш скрипт в модуль. Программа pl2pm (поставляется с Perl) и CPAN-модуль Module-Starter-PBP помогут вам.
Если лицензия позволяет, вы можете загрузить свой код в CPAN, чтобы сделать его еще более удобным для ваших пользователей. Сначала обратитесь за помощью в любое из следующих мест: список рассылки module-authors@perl.org, веб-форум PerlMonks , IRC-канал #toolchain в MagNET (irc: // irc. perl.org/toolchain)