OSX在文件名中移动文件编号不均匀的文件

时间:2014-04-28 10:36:42

标签: macos bash

我已将视频的每一帧导出为PNG个文件,我需要将每隔一帧移动到另一个目录。如何将具有奇数的文件(例如intro_0001.png)移动到临时目录?

文件名的示例是:

intro_0001.png
intro_0002.png
intro_0003.png
intro_0004.png
intro_0005.png
intro_0006.png
intro_0007.png
intro_0008.png
intro_0009.png
intro_0010.png
intro_0011.png
[...]

等等。

3 个答案:

答案 0 :(得分:6)

mv intro_???[13579].png tempdir/

答案 1 :(得分:2)

#!/bin/bash

for file in *.png; do
    [ -f "${file}" ] || continue
    num=${file%.png}
    ((num = 10#${num#intro_}))
    ((num % 2)) && echo mv "${file}" "dir/"
done

答案 2 :(得分:2)

for (( i=1; i<=11; i+=2 )) ; do
    fn=$(printf "intro_%04d.png" $i)
    mv $fn temp
done