wget指定下载的文件名,没有其他文件

时间:2013-05-05 15:52:50

标签: wget

我想使用wget,以便我的文件具有我想要的名称。例如,如果我wget -r http://www.x.com/y/z,主文件将被命名为z,即使它实际上是index.html

我检查了wget的-O选项,但根据手册:

‘-O file’
‘--output-document=file’
The documents will not be written to the appropriate files, but all will be concatenated together and written to file. ...

似乎所有文件将被连接并写入所需名称的文件。我想只连接主文件(而不是由递归产生的任何文件)。我怎么能这样做?

3 个答案:

答案 0 :(得分:36)

如果您只想要主文件,请忽略-r

wget -O customFileName http://www.x.com/y/z

wget不支持仅重命名一个递归下载文件。请记住,文件名对应于URL的一部分,重命名文件会破坏文件之间的链接。您可以随时将其分成两部分:

wget -O customFileName http://www.x.com/y/z
wget -r http://www.x.com/y/z

或者只是自己重命名文件:

wget -r http://www.x.com/y/z
mv z customFileName

答案 1 :(得分:3)

尝试将/附加到网址的末尾:

$ wget -r http://www.x.com/y/z/

这会导致保存index.html文件而不是z文件

答案 2 :(得分:0)

根据我的理解,您希望连接服务器指向的文件,并在网站上递归地将所有文件下载到一个位置。

串连:

wget -qO- http://www.google.com

递归下载到一个地方:

wget --mirror -p --convert-links -P ./LOCAL-DIR http://www.google.com

其中LOCAL-DIR是将下载所有目录的目录。 从这个网站:

http://www.thegeekstuff.com/2009/09/the-ultimate-wget-download-guide-with-15-awesome-examples/