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/p/4919591.html,如需转载请自行联系原作者

相关文章
|
8月前
|
Linux C语言
man|文本编辑器-nano|文件拷贝-cp|cat|剪切/重命名-mv
man|文本编辑器-nano|文件拷贝-cp|cat|剪切/重命名-mv
|
Linux Perl
Linux下重命名文件或文件夹
Linux下重命名文件或文件夹
67 0
|
Linux
在 Linux 中重命名文件夹中的所有文件
在 Linux 中重命名文件夹中的所有文件
255 0
在 Linux 中重命名文件夹中的所有文件
|
Windows
windows 技术篇 - cmd命令查看当前目录下的所有文件和文件夹以及所有子目录下的文件,dir命令的使用方法
windows 技术篇 - cmd命令查看当前目录下的所有文件和文件夹以及所有子目录下的文件,dir命令的使用方法
3709 0
windows 技术篇 - cmd命令查看当前目录下的所有文件和文件夹以及所有子目录下的文件,dir命令的使用方法
|
Shell
Shell mv 修改文件名、扩展名、文件夹名
Shell mv 修改文件名、扩展名、文件夹名
109 0
|
Linux
Linux 常用命令-移动文件、目录、重命名文件
Linux、移动文件、目录、重命名文件
123 0
|
Linux
3.17 Linux移动或重命名文件和目录(mv命令)
mv 命令(move 的缩写),既可以在不同的目录之间移动文件或目录,也可以对文件和目录进行重命名。该命令的基本格式如下:
638 0
3.17 Linux移动或重命名文件和目录(mv命令)
|
网络安全
tar排除文件和目录的用法
tar czvf /tmp/bak.tar.gz \ --exclude 'download/*' \ --exclude .ssh \ --exclude .bashrc \ . 使用--exclude可以排除文件和目录。
4091 0