我最近将我的图片(和视频)从 iPhone 导入到 Windows 10。由于某些奇怪的原因,很多图像和视频的文件扩展名都被更改了。即2022_001.mov实际上是一个图像或2022_002.jpg实际上是一个视频。这是相当随机的,而且普遍情况并非如此。由于我使用的是 Windows,因此在修复扩展名之前我无法真正使用这些文件。
我在这个系统上有 WSL。有没有办法解决这个问题并正确重命名文件?也许通过 bash 脚本?
我写了一个脚本,我将在下面作为答案发布,但可能有更好的方法。
答案1
我最终编写了这个解决我的问题的脚本。
#! /usr/bin/bash
for file in ./*
do
fileName=$(basename -- "$file")
fileName="${fileName%.*}"
ext="${file##*.}"
fileType=$(file "$file")
if [[ $ext == "JPG" ]]; then
if echo "$fileType" | grep -q "Apple QuickTime"; then
mv "$file" "$fileName.mov"
fi
fi
if [[ $ext == "MOV" ]]; then
if echo "$fileType" | grep -q "JPEG"; then
mv "$file" "$fileName.jpg"
fi
fi
done