小池啓仁 ヒロヒト応援ブログ By はてな

小池啓仁(コイケヒロヒト)の動画など。

小池啓仁 ヒロヒト応援ブログ By はてな

LinuxでPerlスクリプトを実行するには

WindowsでのPerlスクリプトの実行は、スクリプトファイルの拡張子Perl本体と関係付けられていて、スクリプトファイルをクリックしたり、コマンドプロンプトからスクリプトファイルを入力するとそれが実行されます。


しかし、Linuxでは同スクリプトファイルをLinuxサーバーへFTPし、テラターム等でログインし、そのスクリプトファイルを入力しても実行ができません。


実は、Linuxで実行するためには、以下の3つのハードルを越えないとならないのです。

スクリプトソースにシバンを付加

Linuxでは、シバンと云って、スクリプトソースの一行目の左端から『#!』で、そのあとPerl本体のパスを記述します。

#!/usr/bin/perl

これは、シバンが無い場合に、以下のようにプロンプトから入力したのと同じなのです。

プロンプト$ /usr/bin/perl Perlスクリプトファイル

尚、Perl本体のパスは以下のコマンドで求められます。

プロンプト$ which perl
/usr/bin/perl

スクリプトファイルに実行権を付加

Linuxでは、パーミッションと云って、実行権の許可を付加しないと実行ができないのです。
実行権の許可の付加は、以下の感じになります。

プロンプト$ chmod +x Perlスクリプトファイル

スクリプトファイル名にパスを付加

Linuxでは、セキュリティの関係で自ディレクトリが実行パス(PATH)に設定されていません。
なので、スクリプトファイル名にパスを付加しないと実行が出来ないのです。


Perlスクリプトファイル名(ddd.pl)だけでパスがない場合

プロンプト$ ddd.pl
bash: ddd.pl: command not found


Perlスクリプトファイル名(ddd.pl)にパス『./』を付加した場合

プロンプト$ ./ddd.pl

これでやっと、LinuxではPerlスクリプトが実行できるのです。