我有 Ubuntu 12.04 VPS,其中一位编辑将 *.png 文件重命名为 *.jpg 并插入到文章中。
我在 apache2 error.log 文件中收到错误。
如何在我的 Ubuntu 12.04 服务器中找到错误输入的 *.png 文件?
谢谢
答案1
如果你想查找扩展名为“jpg”但实际上是 PNG 文件的文件,那么类似...
find /usr/share/doc -type f -name '*.jpg' -print0 | xargs -0 file | grep 'PNG image data'
如果您不使用 .jpg,则对顶级目录和文件名模式进行适当替换将为您提供一个文件列表,每行一个文件,后面是文件的内容。您可以将其输入到您最喜欢的文本处理工具中,以生成文件列表,甚至可以生成将文件重命名/复制到正确名称所需的命令。
答案2
这是一种偷懒、草率但有效的方法。我建议你将“移动”命令写到一个文件中,然后在制作所有可能销毁的内容的压缩包后仔细检查它们。
for img in `find / -type f -iregex ".*\.jp.g" -printx`;
do newname=$(echo $img | sed s/\.jp.g/\.png/) ;
echo "I wanna move $img to $newname";
done