使用添加数字批量重命名文件

qli*_*liq 9 bash batch-rename

我有一堆随机名称的.jpg文件.我想要一个bash脚本来重命名它们:

basename-0.jpg
basename-1.jpg
basename-2.jpg
.
.
.
.
basename-1000.jpg
Run Code Online (Sandbox Code Playgroud)

我写了这个:

n = 0;
for file in *.jpg ; do mv  "${file}" basename"${n}".jpg; n+=1;  done
Run Code Online (Sandbox Code Playgroud)

但是上面的bash的问题在于,在循环中,n被认为是字符串,所以n + 1只是在新移动的文件的末尾添加另一个'1'.感谢您的提示.

Yan*_*san 14

使用$((expression))在bash shell的算术扩展

n=0;
for file in *.jpg ; do mv  "${file}" basename"${n}".jpg; n=$((n+1));  done
Run Code Online (Sandbox Code Playgroud)