BASH(或其他)脚本根据方向移动图像或视频?

BASH(或其他)脚本根据方向移动图像或视频?

脚本编写新手,几天来一直在尝试解决这个问题,现在尝试了我能找到的所有脚本组合,但我似乎无法使其工作。

我想要完成的是一个简单的脚本,它需要整个文件夹,首先创建横向和纵向文件夹,然后将图像或视频移动到正确的文件夹中,横向或水平。

我正在组织 8TB 的视频,这部分过程将为我节省大量时间。

到目前为止,我想到的最好方法是使用下面的脚本,然后在查找器中手动分离文件夹,并使用 Big Mean Folder Machine 将它们转储到横向和纵向文件夹中。

#!/bin/bash
shopt -s nullglob

for f in *.{mp4,MP4,mov,MOV,m4v,M4V}
    do 
        height=`mdls -raw -name  kMDItemPixelHeight "$f"`
        width=`mdls -raw -name  kMDItemPixelWidth "$f"`
        mkdir -p "${height}x${width}"
        mv "$f" "${height}x${width}"/
        
        printf "File: $f\n"     
        printf "> Dimensions: $height x $width \n\n"
    done

printf "All done! \n"

我认为有一种方法可以修改它,以便它使用“kMDItemOrientation”,但我似乎无法让它工作。也许我还差得远,不确定。

任何帮助,将不胜感激!

答案1

通常你只需要看看高度是否大于宽度,例如

if [ ${height} -gt ${width} ]
then
  mv "${f}" portrait/
else
  mv "${f}" landscape/
fi

相关内容