
228
13 章 ディレクトリ操作
もうとすると、
Perl
は
/home/fred/relative/path.txt
を探します。
#
カレントディレクトリからの相対パス
open my $fh, '<:utf8', 'relative/path.txt'
シェルやターミナルプログラムを使わない場合には、あなたのプログラムの起動元は、カレント
ディレクトリについて別の考え方をするかもしれません。エディタの中からプログラムを実行でき
る場合には、エディタのカレントディレクトリは、あなたがプログラムファイルを保存したディレ
クトリとは違うかもしれません。
cron
などでプログラムをスケジュール実行する場合にも、おそ
らく同じようになるでしょう。
カレントディレクトリは、プログラムが保存されているディレクトリと必ずしも同じではありま
せん。次のコマンドはどちらもカレントディレクトリの
my_program
を探して実行します。
$ ./show_my_cwd
$ perl show_my_cwd
しかし、プログラムにフルパスを指定することによって、別のディレクトリからそのプログラム
を実行することもできます。
$ /home/fred/show_my_cwd
$ perl /home/fred/show_my_cwd
シェルがプログラムを探すディレクトリの
1
つに、あなたのプログラムを置いておけば、どん
なディレクトリからでもパスを指定せずにそのプログラムを実行することができます。
$ show_my_cwd
File::Spec