今天要从github下个库很慢,突然来了这个命令:ssh coderbee@coderbee.net 'wget https://github.com/sbt/sbt-assembly/archive/master.zip && cat master.zip' > master.zip
,把vps当作下载中转站了,速度还行。
下完后觉得wget还是很nice的,以前也用来下载过一些api文档,多学习点。
wget介绍
wget 是非交互式(可以在后台运行)的网络下载工具,支持的协议有HTTP、HTTPS、FTP。
wget 可以解析并获取HTML、XHTML和CSS页面里的链接,创建远程web页面的本地版本,完全重建原始页面的目录结构。可以命令wget转换已下载文件里的链接指向本地文件,用于离线浏览。
wget的健壮性可用于慢速或不稳定的网络连接;如果下载由于网络问题失败,wget会重试直到文件下载成功。还支持断点下载,如果服务器支持的话。
使用方式: wget [option]... [URL]...
。
有用的选项
-b, --bacckground
:启动后立即进入后台运行。可以用-o
选项指定日志输出文件。-o logfile, --output-file=logfile
:记录所有输出信息到logfile。-a logfile, --append-file=logfile
:记录所有输出信息追加到logfile。-q, --quiet
:屏蔽wget输出。-
-i file, --input-file=file
:从指定文件读取url。 -F, --force-html
:强制把输入文件当作HTML文件,这样可以解析html里的连接。-
-B url, --base=URL
:指定上两个选项里html文件里的相对连接的基础url。如,指定基础url为http://foo/bar/a.html
,wget从html文件读取到../baz/b.html
,将解析为http://foo/baz/b.html
。 -
-t number, --tries=number
:设置重试次数为number,如果设为0或inf表示无不限制。 -w seconds, --wait=seconds
:两次下载的间隔。-
-waitretry=seconds
:失败后重试的等待时间。 -
-c, --continue
:继续下载之前已部分下载的文件。 -
-T seconds, --timeout=seconds
:设置网络超时时间为seconds秒。 -
--limit-rate=amount
:限制下载速度为每秒amount字节,可以后缀k或m,表示KB/s、MB/s。如:--limit-rate=20k
。 -
--user=user
:指定http、ftp的用户名。 -
--password=password
:指定http、ftp的用户的密码。 -
-U agent-string, --user-agent=agent-string
:指定发送到服务器的user-agent。 -
--post-data=string
:用http post方法在请求体发送字符串内容。 --post-data=file
:用http post方法在请求体发送文件内容。非multipart方式。
递归选项
-r, --recursive
:允许递归下载,默认的最大深度是5。-
-l depth, --level=depth
:指定递归的最大深度为depth。 -
-k, --convert-links
:下载完成后,转换文档里的连接,使适合本地浏览。 -
-p, --page-requisites
:这个选项使wget下载展示一个给定html页面所必须的所有文件。这包括内嵌图片、音频和引用的样式文件。 -
-np
:不遍历父目录。 -nd
:不在本机重新创建目录结构。
加粗的部分我觉得特别有用,更多的选项可以查看man手册。
欢迎关注我的微信公众号: coderbee笔记,可以更及时回复你的讨论。