[Perlトップページ]

はじめに

Perlのスクリプト

Perlでは、スクリプトの拡張子として、plを 使います。例えば、kadai1-1.plというようにスクリプト名をつけます。 ここで、下記のサンプルをエディタで作成し、 kadai1-1.plとして保存して下さい。

print "これからPerlの勉強を始めます\n";

文字や数字を出力するには、printを使用します。

print (出力データ);

または

print 出力データ;

print の後には ( ) をつけてもつけなくても大丈夫ですが、 今後は基本的には print ***** の形式を取ります。

文法チェック

kadai1-1.plの文法チェックを行うには、

% perl -cw kadai1-1.pl

と入力して下さい。文法上の誤りがないと、

kadai1-1.pl syntax OK

と表示してくれます。逆に syntax OK が表示されず、 代わりに下記のようなメッセージが表示されると文法上の誤りが存在します。

Unrecognized character \244 at kadai1-1.pl line 1.

エラーメッセージで表示される行(ここでは1行目)か、その直前の行を 見直してみて下さい。きっと誤りがあるはずです。ここでは " を付け忘れたために上記のようなメッセージが出ました。

実行

kadai1-1.plの文法チェックも無事に終わったと仮定して、実行させるには下記のように入力して下さい。

% perl kadai1-1.pl

と入力して下さい。この結果、下記のように表示されます。

これからPerlの勉強を始めます

また、次のスクリプトをkadai1-2.plとして保存して下さい。

#!/usr/bin/perl

print "これからPerlの勉強を始めます\n";

kadai1-1.plと違う点は、1行目の#!/usr/bin/perlです。これはPerlの実行プログラムがある場所を指定しています。実行プログラムの場所を知るには、

% which perl
/usr/bin/perl

のようにwhichコマンドを使います。 whichコマンドは、設定されたパス(path)を 探して該当するコマンドを見つけてくれます。もし、 perlのありかが表示されない場合には、 パスが適切に設定されていないか、そもそも Perlの実行プログラムがないか、のどちらかになります。

上記のkadai1-2.plを実行させますが、その前にkadai1-2.plを 実行可能な状態にします。

% chmod +x kadai1-2.pl

こうすれば、

% ./kadai1-2.pl

と入力するだけで実行されます。今後は、 kadai1-2.plのように第1行目にPerlの実行プログラムのありかを 指定する記述方法を採ります。

' ' " " の違い

kadai1-2.plのprint文では、下記のように " " 俳力させたい文字列を指定しました。

print "これからPerlの勉強を始めます\n";

それでは、ここで " " ' ' に変えてみましょう。 下記のスクリプトをkadai1-3.plとして作成して下さい。

#!/usr/bin/perl

print 'これからPerlの勉強を始めます\n';

このkadai1-3.plを実行させるとどうなるでしょうか?実行結果は、

これからPerlの勉強を始めます\n

\n が表示されて、改行されていません。 実は、 \n は改行を表す記号なのですが、 " " の中ですと、「 \n では改行する」と 解釈してくれます。一方、 ' ' では、「改行する」と 解釈せずにそのまま表示します。ですので、実行結果では改行されずに \n がそのまま表示されたのです。

今後は、 " " ' ' を使い分けていきますが、初めのうちはあまり気にしなくても大丈夫です。そのうちに理解して下さい。

コメントアウト(#の使用)

スクリプトの中で#を使うと、動作そのものに影響を与えず、 行末までがコメントとして扱われます。 ですので、後から自分が見ても、他人が見ても、どんな処理をしているのか わかりやすくするために、コメントアウトして書き記すことがよくあります。

#!/usr/bin/perl
# printで出力
print 'これからPerlの勉強を始めます\n';

上記の例のように、通常「printで出力」など見ればすぐわかるような コメントは書いたりしませんが、#以下はコメントとして扱われると 覚えていてください。


[Perl講座] [須崎純一トップページ]
須崎純一 京都大学大学 工学研究科都市環境工学専攻 環境情報学講座