Perl重命名当前目录下的文件
下载的zip包解压后,中文都变成了乱码,就写了个脚本重命名文件。
use strict; use warnings; use Cwd; sub main { my $dir = getcwd(); opendir my $DH, $dir or die "Can not open directory: $dir"; while (my $file = readdir $DH) { if ($file =~ /.*-(\d{3})_.*\.mp3$/) { rename $file, "$1.mp3"; } } } main()
Perl中获取当前目录有两种方法:
user Cwd; my $dir = getcwd;
或者
my $dir = $ENV{'PWD'};
前者的好处是跨平台。后者的好处是不用引入额外的包,但是Windows上不能用。
==
作者:zdd
出处:http://www.cnblogs.com/graphics/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.