パス名の分解
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);
関連項目
・ディレクトリ名の取得・ファイル名の取得
