java 修改linux文件名_Linux rename批量更改文件名

需求: 更改基本文件名只有1个字符的扩展文件名

如将1.txt, 2.txt, a.txt更改为 1.kk, 2.kk, a.kk

而12.txt, 22.txt, a33.txt不会被更改

命令:rename 's/(^.)\.kk/$1.uuu/' *

命令:‘s/x/y’ 中,s是命令搜索,‘/'是参数分隔符, x是要被替换(替换前)的字符串,y是替换后的字符串。

perl 正则表达式

x,y 使用perl 正则表达式版本。

^表示开头

$表示结尾

.表示任意一个字符

\.表示字符.

$1: 代表基本文件名/(^.)

⚡ root@cubietruck  /xdx/1  ll

total 28K

-rw-r--r-- 1 root root 814 Jun 30 19:52 1.kk

-rw-r--r-- 1 root root 814 Jun 30 19:52 2.kk

-rw-r--r-- 1 root root 814 Jun 30 19:52 3.kk

-rw-r--r-- 1 root root 814 Jun 30 19:52 34.kk

-rw-r--r-- 1 root root 814 Jun 30 19:52 4.kk

-rw-r--r-- 1 root root 814 Jun 30 19:57 9999999.ddd

-rw-r--r-- 1 root root 814 Jun 30 19:54 tttt.kk

⚡ root@cubietruck  /xdx/1  rename 's/(^.)\.kk/$1.uuu/' * ⚡ root@cubietruck  /xdx/1  ll

total 28K

-rw-r--r-- 1 root root 814 Jun 30 19:52 1.uuu

-rw-r--r-- 1 root root 814 Jun 30 19:52 2.uuu

-rw-r--r-- 1 root root 814 Jun 30 19:52 3.uuu

-rw-r--r-- 1 root root 814 Jun 30 19:52 34.kk

-rw-r--r-- 1 root root 814 Jun 30 19:52 4.uuu

-rw-r--r-- 1 root root 814 Jun 30 19:57 9999999.ddd

-rw-r--r-- 1 root root 814 Jun 30 19:54 tttt.kk

⚡ root@cubietruck  /xdx/1 

更改含有kk文件名为ddd

⚡ root@cubietruck  /xdx/1  rename 's/.kk/.ddd/' *                                                         ⚡ root@cubietruck  /xdx/1  ls

1.ddd  2.ddd  3.ddd  34.ddd  4.ddd  9999999.ddd  tttt.ddd

⚡ root@cubietruck  /xdx/1  rename 's/kk/ddd/' *                                                           ⚡ root@cubietruck  /xdx/1 

更改为经ddd结尾的文件

✘ ⚡ root@cubietruck  /xdx/1  rename 's/ddd$/uuu/' *

⚡ root@cubietruck  /xdx/1  ls

1.uuu  2.uuu  3.uuu  34.uuu  4.uuu  9999999.dddk  tttt.uuu

⚡ root@cubietruck  /xdx/1 

[B] 14.04  0:~- 1:/xdx/1*

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值