如將1.txt, 2.txt, a.txt更改成 1.kk, 2.kk, a.kk正則表達式
而12.txt, 22.txt, a33.txt不會被更改bash
命令:‘s/x/y’ 中,s是命令搜索,‘/'是參數分隔符, x是要被替換(替換前)的字符串,y是替換後的字符串。spa
x,y 使用perl 正則表達式版本。code
^表示開頭字符串
$表示結尾class
.表示任意一個字符擴展
\.表示字符.搜索
$1: 表明基本文件名/(^.)perl
⚡ 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
⚡ 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 文件
✘ ⚡ 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*