ShellScript-rename

ShellScript-rename

這篇介紹ShellScript-rename。

前言

1
2
3
4
5
6
7
在 Linux 系統中,重新命名資料夾或檔案也可以透過同一個指令來達成,這個指令是 mv
mv 是 move 的縮寫,他除了移動檔案資料夾的功能外也可以同時重新命名。

當一個目錄資料夾底下有很多有特定檔名的檔案需要改名,
例如產生的檔案 IMG000001.jpg~IMG000999.jpg ...等檔案,
rename 這個指令可以用來批次修改檔名共同的部分。

Examples

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# rename $1 $2 $3
$1: 要被取代的關鍵字
$2: 新的關鍵字
$3: 檔名符合這個規則的才取代

$ 把 IMG001.jpg, IMG002.jpg… 換成 img001.jpg, img002.jpg…
$ rename IMG img IMG*

# 把所有 .htm 檔案改成 .html
$ rename .htm .html *.htm

# 把檔案 foo1, ..., foo9, foo10, ..., foo278.
# 改成 foo001, ..., foo009, foo010, ..., foo278.
$ rename foo foo0 foo?
$ rename foo foo0 foo??