更改多个文件Linux的名称

Ter*_* Li 12 linux file-rename

我在ubuntu机器上有许多名为a1.txt,b1.txt,c1,txt ...的文件.

有没有快速的方法将所有文件名更改为a2.txt,b2.txt,c2.txt ...?

特别是,我想替换部分名称字符串.例如,每个文件名都包含一个名为"apple"的字符串,我想在所有文件名中将"apple"替换为"pear".

任何命令或脚本?

Mic*_*jer 22

没有任何额外的软件,你可以:

for FILE in *1.txt; do mv "$FILE" $(echo "$FILE" | sed 's/1/2/'); done
Run Code Online (Sandbox Code Playgroud)


use*_*own 5

for f in {a..c}1.txt; do echo "$f" "${f/1/2}"; done
Run Code Online (Sandbox Code Playgroud)

如果输出看起来正确,请将“echo”替换为“mv”。

我想用“linux”替换“apple”

for f in *apple*; do mv "$f" "${f/apple/linux}"; done
Run Code Online (Sandbox Code Playgroud)

第 1 行中的大括号至少应该适用于 bash。