Nein, schreibe kein Shell-Skript. Perl hat dafür schon eine ganz gute Möglichkeit. Der richtige Weg dazu ist, eine CPAN-fähige Distribution mit der normalen Toolchain zu erstellen. Einige davon sind in perlnewmod, perlmodstyle und perlmodinstall erläutert.
Für ein minimales Arbeitsbeispiel einer Verzeichnisstruktur erstellen also:
.
├── Build.PL
├── README
└── script
└── abuscript.pl
In der Build.PL
Datei setzen:
use 5.000;
use Module::Build qw();
Module::Build->new(
module_name => 'abuscript',
dist_version => '1.000',
dist_author => 'abubacker <[email protected]>',
dist_abstract => 'describe what the script does in one sentence',
configure_requires => {
'perl' => '5.000',
},
requires => {
'JSON::Any' => 0,
},
)->create_build_script;
ändern die Details Ihre Zwecke Hotel.
In der README
Datei, einige Installationsanweisungen setzen, zum Beispiel:
To install this module, run the following commands:
perl Build.PL
./Build install
Sobald Sie mit allem, was getan werden, Sie laufen:
perl Build.PL
./Build manifest
./Build dist
Das in einem .tar.gz
Archiv führen was du verteilen wirst. Sagen Sie Ihren Benutzern, sie sollten es wie jedes andere CPAN-Modul installieren, oder wenn sie nicht wissen, was das bedeutet, sollten sie die README lesen.
Wenn Sie Zeit haben, empfehle ich, Ihr Skript in ein Modul zu konvertieren. Das Programm pl2pm (kommt mit Perl) und das CPAN-Modul Module-Starter-PBP helfen Ihnen.
Wenn es die Lizenz zulässt, können Sie Ihren Code in CPAN hochladen, um ihn für Ihre Benutzer noch bequemer zu machen. Bitten Sie zuerst um Hilfe in den folgenden Orten: Mailingliste [email protected], Webforum PerlMonks, IRC-Kanal #toolchain auf MagNET (
Ich würde 'perl -MJSON :: Any -e1 2>/dev/null' bevorzugen - gibt es einen Punkt beim Drucken der Version und Senden an einen kleinen Eimer – justintime
@justintime: Wie ich schon sagte, wenn Sie das überprüfen möchten Version von JSON :: Any, erfassen Sie die Ausgabe - es hat mir erspart, zu erklären, wie man die Version als separate Übung erhält. –