我有大量的文件,如下所示:
DET01-ABC-5_50-001.dat
...
DET01-ABC-5_50-0025.dat
我希望它们看起来像这样:
DET01-XYZ-5_50-001.dat
...
DET01-XYZ-5_50-0025.dat
我该怎么做呢?
发布于 2009-09-08 08:56:56
rename命令有几个变体,在您的示例中,它可能像下面这样简单
rename ABC XYZ *.dat
你可能有一个使用Perl正则表达式的版本;
rename 's/ABC/XYZ/' *.dat
发布于 2013-07-22 21:44:24
for file in *.dat ; do mv $file ${file//ABC/XYZ} ; done
不需要rename
或sed
。只要猛击parameter expansion就行了。
发布于 2009-09-08 08:47:51
您将需要学习如何使用sed http://unixhelp.ed.ac.uk/CGI/man-cgi?sed
还可以使用for,这样您就可以遍历文件条目http://www.cyberciti.biz/faq/bash-for-loop/
你的命令看起来像这样,我旁边没有术语,所以我不能检查
for i in `dir` do mv $i `echo $i | sed '/orig/new/g'`
https://stackoverflow.com/questions/1392768
复制相似问题