linux rename命令批量修改文件名
修改文件名可以用mv命令来实现
mv filename1 filename2
- 1
但如果批量修改还是使用rename命令更为方便
现在我们有a b c d 四个文件
增加后缀
rename 's/$/\.txt/' *
- 1
a.txt b.txt c.txt d.txt
修改后缀
rename 's/\.txt/\.dat/' *
- 1
a.dat b.dat c.dat d.dat
删除后缀
rename 's/\.dat//' *
- 1
a b c d
批量修改,比如将a改为aa,b改为bb
rename 's/(.)/$1$1/' *
- 1
aa bb cc dd
俗话说授人以鱼不如授人以渔,看了上面几个简单例子相信也不一定能满足你的需求,所以学会利用正则进行文件名的任意修改才是你最想知道的。
man rename
- 1
可以查看帮助文档,我简单整理下我对rename命令的理解
1. rename后接一个正则表达式,是perl语法规则的,‘s/’ 是正则匹配的开始的意思,然后第一个/和第二个/之间的部分是被匹配内容,第二个/和第三个/之间是要替换成的内容。最后*是对当前文件夹下
所有文件进行匹配。
2. $符号可以表示匹配最后一个位置(如增加后缀中),也可以表示捕获分组(如修改a为aa中)
linux rename命令批量修改文件名的更多相关文章
- 【Linux】Shell批量修改文件名
修改文件名,替换中间字符: 例如:ABC_define_EFG.jpg,要把中间的define替换成argument: 用如下脚本即可: for var in *; do mv "$var& ...
- Linux学习之批量修改文件名
1. 通过专业的改名命令rename实现 [root@oldboy oldboy]# ll total -rw-r--r-- root root Nov : stu_102999_1_finished ...
- linux下C++遍历文件夹下的全部文件;Windows/Linux下C++批量修改文件名,批量删除文件
Linux下 C++遍历目录下所有文件 rename(image_path.c_str(), image_path_new.c_str()); remove(image_path_move.c_str ...
- Linux利用sed批量修改文件名
初始文件名 # ls -lh total 5.5G -rw-r--r-- 1 root root 193K Sep 28 09:38 20180908.txt drwxr-xr-x 2 root ro ...
- Linux下批量修改文件名(rename)
原文地址: http://blog.csdn.net/sea_shore/article/details/6102437 1.rename命令批量修改文件名, 其实linux下可以使用别的办法来批量修 ...
- Linux rename命令
转载:http://blog.csdn.net/sea_shore/article/details/6102437 1.rename命令批量修改文件名, 其实linux下可以使用别的办法来批量修改文件 ...
- rename 批量修改文件名简单用法
有的时候我们需要批量创建文件做测试,为了做区分,一般只要稍稍动动文件名即可,MV命令既可以移动文件,也是可以修改文件名的,但批量修改文件名MV做不到,此时,我们可以用rename命令批量修改是蛮不错的 ...
- rename 批量修改文件名
1.rename的用法 rename与mv的区别就是mv只能对单个文件重命名,而rename可以批量修改文件名 linux中的rename有两种版本,一种是C语言版的,一种是Perl版的.早期的Lin ...
- 用python批量修改文件名
从youtube上当下来百来首mv,每个都需要去掉视频,这还挺好弄得,格式工厂一弄就完了,但是文件名,都带有乱七八糟的*啥的巴拉巴拉的,咋修改啊,几百首总不可能一个一个rename吧 #批量修改文件名 ...
随机推荐
- 搭建LDAP服务器
1. 使用SSH 登陆服务器. 2. 更新有效的包. sudo apt-get update 3. 安装LDAP和一些其它LDAP相关的工具. sudo apt-get install slapd l ...
- ref:web 防止SQL注入方法
ref:https://blog.csdn.net/beidou321/article/details/6482618 小结:spring采用JdbcTemplate来操作sql,一般不要自行拼接sq ...
- priority_queue<int>q;
priority_queue<int>q;//默认不递增q.size();//q中有几个元素q.pop();//删除队首q.top();//返回队首元素q.push();//在队列中插入一 ...
- JS脚本获取开发者后台所有Device
``` var ids = ["Device ID"]; var names = ["Device Name"]; $("td[aria-descri ...
- Bzoj2149拆迁队:cdq分治 凸包
国际惯例的题面:我们考虑大力DP.首先重新定义代价为:1e13*选择数量-(总高度+总补偿).这样我们只需要一个long long就能维护.然后重新定义高度为heighti - i,这样我们能选择高度 ...
- Java多线程runnable
主要为大家分享Java多线程怎么实现Runnable方式 一 :主要步骤 1.定义实现Runnable接口 2.覆盖Runnable接口中run方法,将线程要运行的代码存在run方法里 3.用Thre ...
- 垂直居中Demo
换行文字垂直居中1 换行文字垂直居中,兼容所有浏览器 换行文字垂直居中2 换行文字垂直居中,兼容所有浏览器 固定宽高图片垂直居中1 固定宽高图片垂直居中2 图片自适应容器宽高垂直居中 CSS3垂直居中 ...
- centos上安装elasticsearch 5.5.1 遇到的各种坑
mac玩得好好滴,一次性启动成功,结果在centos上安装时,遇坑无数,记录一下: 一.只能localhost访问的问题修改 conf\elasticsearch.yml network.host: ...
- ASp.net中Froms验证方式
微软的ASP.NET提供了3种用户验证方式,即Windows验证.窗体(Forms)验证和护照验证(Passport)验证. 由于验证方式各不相同,因而这3种验证方式在使用范围上也有很大的不同, Wi ...
- php里面bcadd是什么意思
PHP 为任意精度数学计算提供了二进制计算器(Binary Calculator),它支持任意大小和精度的数字,以字符串形式描述 bcadd — 加法bccomp — 比较bcdiv — 相除bcmo ...