我正在尝试在一个文件夹中的所有文件名_
中用-
个连字符替换所有.mat
下划线字符。
我输入了不同版本的不同版本:
rename -f 'w/_/-' *.mat
有人可以向我解释有什么问题吗?
答案 0 :(得分:4)
如果您正在使用a Perl-based rename
(正如您的代码所示),则w
不是Perl正则表达式操作。
rename -f 's/_/-/g' *_*.mat
答案 1 :(得分:2)
我无法理解您是使用shell重命名还是使用Perl重命名:我无法在任何一种情况下理解您的命令。
重命名当前目录中所有*.mat
文件的Perl命令行脚本如下所示
perl -e 'do { (my $f = $_) =~ tr/_/-/; rename $_, $f } for glob "@ARGV"' *.mat