我有60个地块的实验。我用go-pro每次治疗拍了5张照片,外加第六张天空照片,以标记我移至下一张情节的位置(总共360张照片)。我如何编写bash脚本来自动重命名这些文件;即
更改文件集:
GOPRO0001.jpg
,GOPRO0002.jpg
,...,...,GOPRO0360.jpg
变成这样:
plot1_1.jpg
,...,plot1_6.jpg
,...,...,plot60_1.jpg
,...,plot60_6.jpg
最有效的方法是什么?我的想法是我需要进行2个迭代,但是我不确定该怎么做。
答案 0 :(得分:1)
您可以尝试以下BASH脚本:
#!/bin/bash
i=1;j=1
for file in GOPRO*.jpg; do
mv "$file" "plot${j}_${i}.jpg"
if [[ $i -eq 6 ]]; then
i=1
((j++))
else
((i++))
fi
done
如果您想在实际执行操作之前验证它会做什么,请将echo
放在mv
命令之前。