perlプログラムの実行方法の検討(ファイルのパーミッションに関連して)

まず、シェルの上でperlのプログラミングを入力してCntrl + Dで実行する

$ perl

print "Hello, world\n";
#ここでCntrl + D (EOF:end of fileを意味する)を入力。
Hello, world
$


また、vimエディタでスクリプトを入力して(.pl)、それを実行する方法もある。

$ vim hello.pl

a

print "Hello, world\n";

Esc

$ perl hello.pl
Hello, world
$

次に、vimで書いたスクリプトに対して、perl本体へのパスを通す方法を考える。

$ which perl
/usr/bin/perl

そこで
$ vim hello.pl

a

#! /usr/bin/perl

print "Hello, world\n";

Esc


ここで、
$ ls -l
-rw-r--r-- 1 kappa kappa 43 2011-04-16 16:46 hello.pl

と出る。これは、ファイルのパーミッションを調べるコマンドである。

意味についての説明

・はじめの'" - "
ファイルの種類(- : ファイル、 d : ディレクトリ)

・rw-r--r--

rw-  r-- r-- の三つにわけて考える。

一つ目は所有者、 二つ目は所有グループ、 三つめはその他のファイルのアクセス権限である。

r : 読み出し
w  : 書き出し
x  : 実行

を示す。
ファイルを作成したときはデフォルトでは、ファイル所有者は、ファイルを読んだり内容変更したりできるが、他のユーザーは読むだけであるようだ。ただし、誰も実行可能ではない。


そこで、実行可能にするには、chmodコマンドを使用する。

chomod (利用者 ; u,g,o,a) (オペレータ; + - =)(アクセス権; r, w,x)

の様に用いる。

自分だけに実行権限を与えたいときは、

$ chomod u+x hello.pl


$ ls -l
-rwxr--r-- 1 kappa kappa 43 2011-04-16 16:46 hello.pl

キター!!!!!これで、実行可能になった!!!!!!!!(最初のユニットがrwxとなっている☆)

ここで、

$ ./hello.pl
Hello, world
$


完成です。ちょっと、ファイル構造について深く知りました(^ ^)