2013-07-23 98 views
2

有wget下载我正在尝试执行。wget下载并重命名最初没有文件扩展名的文件

它下载数千个文件,除非我开始限制文件类型(垃圾文件等)。理论上限制文件类型是很好的。

但是,有很多文件wget下载没有文件扩展名,例如,当用Adobe手动打开时,实际上是PDF文件。这些实际上是我想要的文件。

将wget限制为文件类型PDF不下载这些文件。

到目前为止,我的语法是wget的-r --no父母A.pdf www.websitehere.com

使用wget的-r --no父母www.websitehere.com带给我的每文件类型,所以理论上我拥有一切。但是这意味着我有1000个垃圾文件需要删除,然后有几百个未知文件类型的有用文件需要重命名。

有关如何使用适当的文件扩展名来存档和保存文件的任何想法?

或者,一种方法将wget限制为只有文件而没有的文件扩展名,然后使用单独的批处理方法来确定文件类型并进行适当的重命名?

手动测试每个文件以确定合适的应用程序将花费大量时间。

感谢任何帮助!

+0

您只需从每个文件中读取4个字节并检查“%PDF”,与wget下载文件并将其放在磁盘上的时间相比,这应该几乎不可察觉。你甚至可以在单独的线程中完成这项工作。 – Marichyasana

+0

非常感谢您的输入 - 肯定会比重新下载更快。我怀疑你提到了像这里看到的那种方法吗? http://superuser.com/questions/186942/renaming-multiple-file-extensions-based-on-a-condition – Stews

+0

最终没有改变wget解决方案;只是做大量的下载,然后处理文件更改。解决方案批量重命名未知文件类型在这里:http://stackoverflow.com/questions/17822865/method-to-inspect-first-4-bytes-and-rename-file-extension – Stews

回答

3

wget有一个--adjust-extension选项,它将为HTML和CSS文件添加正确的扩展名。但其他文件(如PDF)可能无法正常工作。 See the complete documentation here