为了账号安全,请及时绑定邮箱和手机立即绑定

在Unix中基于模式重命名多个文件

在Unix中基于模式重命名多个文件

湖上湖 2019-07-02 16:04:09
在Unix中基于模式重命名多个文件目录中有多个以前缀开头的文件。fgh,例如:fghfilea fghfileb fghfilec我想重命名所有的名字,以前缀开头。jkl..是否有一个命令来执行此操作,而不是单独重命名每个文件?
查看完整描述

3 回答

?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

有几种方法,但使用rename可能是最简单的。

使用一个版本的rename:

rename 's/^fgh/jkl/' fgh*

使用另一个版本的rename(与Judy2K的答案):

rename fgh jkl fgh*

您应该检查您的平台的手册页,以查看上述哪一个应用程序。


查看完整回答
反对 回复 2019-07-02
?
慕哥9229398

TA贡献1877条经验 获得超6个赞

这就是为什么sedmv可以一起用于重命名:

for f in fgh*; do mv "$f" $(echo "$f" | sed 's/^fgh/jkl/g'); done

如下所示,如果文件名中有空格,则引号可能需要环抱返回要将文件移动到以下位置的名称的子函数:

for f in fgh*; do mv "$f" "$(echo $f | sed 's/^fgh/jkl/g')"; done


查看完整回答
反对 回复 2019-07-02
  • 3 回答
  • 0 关注
  • 632 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信