因此,在输出视频的图像序列帧之后,比我需要我已经结束了与方式更多的图像。我想削减这一点。图像被命名为1.png,高达959.png。用bash/zsh脚本执行此操作有一个简便的方法吗?像删除其他图像并重命名下一个以保持订单?降低图像序列
在此先感谢。
因此,在输出视频的图像序列帧之后,比我需要我已经结束了与方式更多的图像。我想削减这一点。图像被命名为1.png,高达959.png。用bash/zsh脚本执行此操作有一个简便的方法吗?像删除其他图像并重命名下一个以保持订单?降低图像序列
在此先感谢。
好了,所以我发现有些解决的。
#!/bin/zsh
c=0
cc=0
ext=".png"
for file in `ls | sort -V`
do
let c=c+1;
let cc=cc+1;
if [ $c -eq 2 ]; then
rm -f $file
c=0
else
let cc=cc-1;
new="$cc$ext"
mv $file $new
fi
done
这将列出当前目录中的所有文件并循环遍历它们,删除所有其他文件并重命名下一个文件。请注意,这也会重命名脚本文件,因此您可能需要创建一些逻辑来避免这种情况。
的简单的方法来避免重命名/通过简单地不将其放置在相同的删除脚本目录。更好的做法是只在你实际想要触及的文件上运行循环:'用于$(ls * .png | sort -V)或更好的文件,用于* .png(n)'中的文件。 – Adaephon
要删除文件1 5 9 13 17 ...使用bash:'RM {1..959..4} .png' – Cyrus