File::Basename
2014-04-17 23:01
399 查看
在Perl中,如果想将路径和文件名,文件后缀分别提取出来,可以使用perl提供的模块File::Basename来实现。
File::Basename中常用的方法有fileparse, basename, dirname。
fileparse方法会传回包含路经名称三个部份的串列;
dirname方法传回路经位置;
basename方法传回档案名称。
结果:
zl@zl-ubuntu:~/perl/basename$ perl basename.pl
$name = base
$path = /home/zl/perl/basename/
$suffix = .pl
$basename = base
$dirname = /home/zl/perl/basename
zl@zl-ubuntu:~/perl/basename$
参考:
语法:http://search.cpan.org/~rjbs/perl-5.18.2/lib/File/Basename.pm
http://www.perlcn.com/perlbc/perljj/346.html
File::Basename中常用的方法有fileparse, basename, dirname。
fileparse方法会传回包含路经名称三个部份的串列;
dirname方法传回路经位置;
basename方法传回档案名称。
#!/usr/bin/perl -w use File::Basename; my $full_path_name='/home/zl/perl/basename/base.pl'; my @suffix_list=qw(.pl .txt); my ($name, $path, $suffix)=fileparse($full_path_name, @suffix_list); print "\$name = $name \n"; print "\$path = $path \n"; print "\$suffix = $suffix \n"; my $basename = basename($full_path_name, @suffix_list); print("\$basename = $basename \n"); my $dirname = dirname($full_path_name, @suffix_list); print("\$dirname = $dirname \n");
结果:
zl@zl-ubuntu:~/perl/basename$ perl basename.pl
$name = base
$path = /home/zl/perl/basename/
$suffix = .pl
$basename = base
$dirname = /home/zl/perl/basename
zl@zl-ubuntu:~/perl/basename$
参考:
语法:http://search.cpan.org/~rjbs/perl-5.18.2/lib/File/Basename.pm
use File::Basename; ($name,$path,$suffix) = fileparse($fullname,@suffixlist); $name = fileparse($fullname,@suffixlist); $basename = basename($fullname,@suffixlist); $dirname = dirname($fullname);
http://www.perlcn.com/perlbc/perljj/346.html
相关文章推荐
- flask debug模式logging模块报错os.rename(self.baseFilename, dfn) WindowsError: [Error 32]
- What does dirname(__FILE__) and basename(dirname(__FILE__)) do?
- [PowerShell]One line to pack individual PDF file into their BaseName.RAR
- VS code 中的各种变量 ${file},${fileBasename}
- GetModleFileName和GetModuleBaseName的区别
- File::Basename module
- Launch screen interface file base name 对导航栏和标签栏适配的作用
- Android Studio-Didn't find class XXX on path: DexPathList [zip file "/data/app/packagename/base.apk]
- VSCode tasks.json中的各种替换变量的意思 ${workspaceFolder} ${file} ${fileBasename} ${fileDirname}等
- php basename dirname __FILE__
- VSCode launch.json中的各种替换变量的意思 ${workspaceFolder} ${file} ${fileBasename} ${fileDirname}等
- Android Studio-Didn't find class XXX on path: DexPathList [zip file "/data/app/packagename/base.apk]
- Response.setHeader("Content-Disposition", "attachment; filename=" + fileName+".xls");file.Name为中文则乱码
- FilenameFilter使用方法介绍
- appcompat_v7/res/values-v21/themes_base.xml No resource found that matches the given name
- version Base not defined in file libdevmapper.so.1.02 with link time reference
- PS1="\[\e[01;30m\]\W (`basename $(tty)`:\j)\[\e[0;34m\]>\[\e[0;32m\]>\[\e[32;01m\]>\[\e[0m\] "
- 如何解决VisualSVN Server 安装提示错误 Repositories is not a valid short file name
- linux之basename
- linux basename命令的使用