首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >重命名文件名的一部分

重命名文件名的一部分
EN

Stack Overflow用户
提问于 2009-09-08 16:45:20
回答 4查看 116.4K关注 0票数 100

我有大量的文件,如下所示:

代码语言:javascript
复制
DET01-ABC-5_50-001.dat
...
DET01-ABC-5_50-0025.dat

我希望它们看起来像这样:

代码语言:javascript
复制
DET01-XYZ-5_50-001.dat
...
DET01-XYZ-5_50-0025.dat

我该怎么做呢?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-09-08 08:56:56

rename命令有几个变体,在您的示例中,它可能像下面这样简单

代码语言:javascript
复制
rename ABC XYZ *.dat

你可能有一个使用Perl正则表达式的版本;

代码语言:javascript
复制
rename 's/ABC/XYZ/' *.dat
票数 185
EN

Stack Overflow用户

发布于 2013-07-22 21:44:24

代码语言:javascript
复制
for file in *.dat ; do mv $file ${file//ABC/XYZ} ; done

不需要renamesed。只要猛击parameter expansion就行了。

票数 140
EN

Stack Overflow用户

发布于 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/

你的命令看起来像这样,我旁边没有术语,所以我不能检查

代码语言:javascript
复制
for i in `dir` do mv $i `echo $i | sed '/orig/new/g'`
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1392768

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档