博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux中批量修改文件名
阅读量:6629 次
发布时间:2019-06-25

本文共 1439 字,大约阅读时间需要 4 分钟。

Linux中批量修改文件名

有时候我们有一个目录下面的文件名都需要重新命令

如: 以下有十个学生完成的脚本,现在需要将finish改为ing

1
2
3
[root@slave 
test
]
# touch student_{01..10}_finish.sh
[root@slave 
test
]
# ls student_*
student_01_finish.sh  student_03_finish.sh  student_05_f
1
student_02_finish.sh  student_04_finish.sh  student_06_finish.sh  student_08_finish.sh  student_10_finish.sh

方法1: sed

1
for 
in 
`
ls 
student_*` ; 
do 
echo 
$f | 
mv 
$f `
sed 
's#finish#ing#g'
`;
done

方法2: awk 字符串拼接的方法(在传递给bash)

测试:

1
2
[root@slave 
test
]
# echo student_05_finish.sh | awk -F 'finish' '{ print "mv " $0 " " $1 "ing"$2}'
mv 
student_05_finish.sh student_05_ing.sh

批量执行

1
2
3
4
[root@slave test]# for f in `ls student*` ;do echo $f | awk -F 'finish' '{ print "mv " $0 " " $1 "ing"$2}';done | bash
[root@slave test]# ls student_*
student_01_ing.sh  student_03_ing.sh  student_05_ing.sh  student_07_ing.sh  student_09_ing.sh
student_02_ing.sh  student_04_ing.sh  student_06_ing.sh  student_08_ing.sh  student_10_ing.sh

或:

1
for 
in 
`
ls 
student*` ;
do 
echo 
$f | 
mv 
$f `
awk 
-F 
'finish' 
'{ print  $1 "ing" $2}'
`;
done

  

方法三: rename命令,专业处理批量修改文件名的linux 命令

用法: man rename

1
2
3
4
[root@slave test]# rename "finish" "ing" student_*
[root@slave test]# ls student_*
student_01_ing.sh  student_03_ing.sh  student_05_ing.sh  student_07_ing.sh  student_09_ing.sh
student_02_ing.sh  student_04_ing.sh  student_06_ing.sh  student_08_ing.sh  student_10_ing.sh

本文转自残剑博客51CTO博客,原文链接http://blog.51cto.com/cuidehua/1766448如需转载请自行联系原作者

cuizhiliang

你可能感兴趣的文章
Last-Modified、If-Modified-Since 实现缓存和 OutputCache 的区别
查看>>
理解SQL代理错误日志
查看>>
维护计划作业
查看>>
Multipart Internet Mail Extensions (MIME)
查看>>
C# WinForm控件之Dock顺序调整
查看>>
中控科技 ZK Software的售后服务真像一坨屎,技术人员嚣张
查看>>
NSPredicate过滤数组数据
查看>>
设置MYSQL允许用IP访问
查看>>
spark 数据预处理 特征标准化 归一化模块
查看>>
大道至简,系统设计和模块划分的实用经验之谈
查看>>
正则表达式中参数g、i、m的作用(share)
查看>>
使用Solr构建企业级的全文检索(四)---------写入文档
查看>>
squid的正向代理和反向代理
查看>>
linux下命令与文件的查询
查看>>
SEO意识的网站设计:设计和SEO的完美结合可能么?
查看>>
IP 算法
查看>>
IBM_System_x3650服务器固件升级手顺
查看>>
awk单行脚本
查看>>
软件开发之通病解析
查看>>
python wxPython 5 (框架 wx.Frame)
查看>>