パス名の分解
File::Basenameモジュールのfileparseを使います。
第1引数にパス名を指定するとファイル名、ディレクトリ名を返します。第2引数以降に拡張子を指定すると、ファイル名、ディレクトリ名、拡張子を返します。
use File::Basename; $filename = '/home/user1/test.txt'; # $name = 'test.txt'; $dir = '/home/user1/'; $ext = ''; ($name, $dir, $ext) = fileparse($filename); @extlist = ('\.txt'); # $name = 'test'; $dir = '/home/user1/'; $ext = '.txt'; ($name, $dir, $ext) = fileparse($filename, @extlist);
関連項目
・ディレクトリ名の取得・ファイル名の取得