当前位置: 技术问答>linux和unix
文件重命名问题
来源: 互联网 发布时间:2017-04-23
本文导语: 如何在shell实现以下功能 将一个文件夹下所有符合规则的文件按我要求的规则修改文件名 我是用ls和grep获取和筛选文件,然后用sed修改原文件名,可是怎么实现修改文件名啊,我是说怎么把前面获取到的参数传给rename或者mv,关...
如何在shell实现以下功能
将一个文件夹下所有符合规则的文件按我要求的规则修改文件名
我是用ls和grep获取和筛选文件,然后用sed修改原文件名,可是怎么实现修改文件名啊,我是说怎么把前面获取到的参数传给rename或者mv,关键是对应,比如我把123.txt修改成了abc_123.txt,我怎么在用批处理时把123.txt和abc_123.txt传给rename或者mv?
将一个文件夹下所有符合规则的文件按我要求的规则修改文件名
我是用ls和grep获取和筛选文件,然后用sed修改原文件名,可是怎么实现修改文件名啊,我是说怎么把前面获取到的参数传给rename或者mv,关键是对应,比如我把123.txt修改成了abc_123.txt,我怎么在用批处理时把123.txt和abc_123.txt传给rename或者mv?
|
for i in `ls`
do
mv $i `echo $i | sed 's/^/abc_/'`
done
类似这样做
do
mv $i `echo $i | sed 's/^/abc_/'`
done
类似这样做
|
#!/bin/sh
ls | grep ".txt" | while read oldname;
do
newname=`echo "$oldname" | sed -e 's/^([^.]*).txt$/abc_1.txt/'`
echo "mv $oldname $newname"
done
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。