抱歉这个新手问题,我通常会查找如何做到这一点,但我处于可怕的境地,任何错误都可能导致大文件丢失,所以我需要小心。
有任何想法吗?最好是预测试的,谢谢!
我将假设这些文件没有与文件类型相对应的扩展名(.png
对于 PNG 文件),否则解决方案将是显而易见的。
如果是这种情况,您可以使用file
. 此命令将显示当前目录和任何子目录中的所有 PNG 文件:
$ find -exec bash -c "file -b --mime-type {} | grep -q ^image/png$" \; -print
这个将删除它们:
$ find -exec bash -c "file -b --mime-type {} | grep -q ^image/png$" \; -delete
既然你说它会导致大量文件丢失,你可以先找到文件,以确保文件列表正确。
find YOUR_DIRECTORY -name '*.png'
确认文件列表后,只需添加-exec
find YOUR_DIRECTORY -name '*.png' -exec rm -f {} +
PS:这将在子目录中进行搜索并找到/删除它们。
这实际上非常简单。
只需 cd 进入您的目录。
并输入
rm *.png
这将自动删除所有带有 PNG 扩展名的文件。
至于您担心丢失数据,只需制作一个(或多个)目录的副本。备份重要数据总是好的。你永远不知道什么时候可能需要它们!