更改bash中较大子集的文件名(mac Terminal)

时间:2018-08-16 10:09:04

标签: bash terminal

我已经加载了以下列方式标记的.tif文件:

xxxx_01.tif; xxxx_02.tif; .... xxxx_95.tif

如何在增加标签的同时批量更改文件名(即文件01-16更改为condition_1;文件17-20更改为condition_2)?

我一直在执行以下命令来重命名它们,但是我不确定如何只选择某个范围:

a=1; 
for i in *.tif; 
do new=$(printf "%02d.tif" "$a"); 
mv -- "$i" "filename_$new"; 
let a=a+1; 
done

欢呼

1 个答案:

答案 0 :(得分:1)

您可以生成您感兴趣的文件名,而不是遍历文件夹中的所有文件:

for n in $(seq -w 1 16)
do
    original_tif="xxxx_${n}.tif"
    new_tif="condition_1_${n}.tif"
    mv "${original_tif}" "${new_tif}"
done