标签 wget 下的文章

wget是Linux/Unix命令行文件下载器,它是下载网站上文件的免费的非交互下载工具,它支持HTTPHTTPSFTP协议,也支持通过HTTP代理检索。Wget是非交互的,这就是说它可以在用户没有登录到系统时在后台工作。

在本帖中,我们将讨论wget命令的一些不同使用实例。

实例1 :下载单个文件

# wget http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso

该命令会下载CentOS 7 ISO文件到用户当前工作目录中。

实例2:续传分段下载文件

总有那么一些场景,当我们开始下载一个大文件时,中途互联网却断开了。那样的话,我们可以使用wget命令的‘-c’选项,让下载从断点续传。

# wget -c http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso

实例3:后台下载文件

我们可以通过在wget命令中使用‘-b’选项来让它在后台下载文件。

linuxtechi@localhost:~$ wget -b http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/
CentOS-7.0-1406-x86_64-DVD.iso
Continuing in background, pid 4505.
Output will be written to ‘wget-log’.

正如我们上面所见,下载进程被捕获到用户当前目录中的‘wget-log’文件中。

linuxtechi@localhost:~$ tail -f wget-log
2300K .......... .......... .......... .......... .......... 0% 48.1K 18h5m
2350K .......... .......... .......... .......... .......... 0% 53.7K 18h9m
2400K .......... .......... .......... .......... .......... 0% 52.1K 18h13m
2450K .......... .......... .......... .......... .......... 0% 58.3K 18h14m
2500K .......... .......... .......... .......... .......... 0% 63.6K 18h14m
2550K .......... .......... .......... .......... .......... 0% 63.4K 18h13m
2600K .......... .......... .......... .......... .......... 0% 72.8K 18h10m
2650K .......... .......... .......... .......... .......... 0% 59.8K 18h11m
2700K .......... .......... .......... .......... .......... 0% 52.8K 18h14m
2750K .......... .......... .......... .......... .......... 0% 58.4K 18h15m
2800K .......... .......... .......... .......... .......... 0% 58.2K 18h16m
2850K .......... .......... .......... .......... .......... 0% 52.2K 18h20m

实例4:限制下载速率

默认情况下,wget命令尝试以全速下载,但是有时候你可能使用的是共享互联网,那么如果你尝试使用wget来下载庞大的文件时,就会把其它用户的网络拖慢。这时,你如果使用‘-limit-rate’选项来限制下载速率,就可以避免这种情况的发生。

#wget --limit-rate=100k http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso

在上例中,下载速率被限制到了100k。

实例5:使用‘-i’选项来下载多个文件

如果你想要使用wget命令来下载多个文件,那么首先要创建一个文本文件,并将所有的URL添加到该文件中。

# cat download-list.txt
url1
url2
url3
url4

现在,发出以下命令吧:

# wget -i download-list.txt

实例6:增加重试次数

我们可以使用‘-tries’选项来增加重试次数。默认情况下,wget命令会重试20次,直到下载成功。

该选项在你下载一个大文件的过程中互联网连接发生问题时十分有用,因为在那种情况下,会增加下载失败的几率。

# wget --tries=75 http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso

实例7:使用-o选项来重定向wget日志到文件

我们可以使用‘-o’选项来重定向wget命令的日志到一个日志文件。

#wget -o download.log http://mirror.nbrc.ac.in/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso

上面的命令会在用户当前目录下创建download.log文件。

实例8:下载整个网站用于本地查看

# wget --mirror -p --convert-links -P ./<Local-Folder> website-url

鉴于

  • –mirror : 开启适用于镜像的选项。
  • -p : 下载所有能正确显示指定HTML网页的全部必要文件。
  • –convert-links : 下载完成后,转换文档中的链接以用于本地查看。
  • -P ./Local-Folder : 保存所有文件和目录到指定的目录。

实例9:下载过程中拒绝文件类型

当你正打算下载整个网站时,我们可以使用‘-reject’选项来强制wget不下载图片。

# wget --reject=png Website-To-Be-Downloaded

实例10:使用wget -Q设置下载配额

我们可以使用‘-Q’选项强制wget命令在下载大小超过特定大小时退出下载。

# wget -Q10m -i download-list.txt

注意,配额不会对单个文件的下载产生影响。所以,如果你指定wget -Q10m ftp://wuarchive.wustl.edu/ls-lR.gz,ls-lR.gz 的全部内容都会被下载。这在下载命令行指定的多个URL时也一样。然而,在递归或从一个输入文件检索时,还是值得一用。因此,你可以安全地输入‘wget -Q10m -i download-list.txt’,在超过配额时,下载会退出。

实例11:从密码保护的网站下载文件

# wget --ftp-user=<user-name> --ftp-password=<password> Download-URL

另外一种指定用户名和密码的方式是在URL中。

任一方法都将你的密码揭露给了那些运行“ps”命令的人。要防止密码被查看到,将它们存储到.wgetrc或.netrc中,并使用“chmod”设置合适的权限来保护这些文件不让其他用户查看到。如果密码真的很重要,不要在它们还在文件里躺着的时候走开,在Wget开始下载后,编辑该文件,或者删除它们。


via: http://www.linuxtechi.com/wget-command-practical-examples/

作者:Pradeep Kumar 译者:GOLinux 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

Linux 命令行工具很牛逼,Linux 命令行以及一些第三方应用让 Linux 变得更牛逼。Linux 命令行工具可以用于下载种子和文件,可以上网冲浪。

5 Command Line Internet Tools

本文推荐的5个强悍的上网工具方便实用,是居家旅行的必备物品。

1. rTorrent

rTorrent 基于文本的 Torrent 客户端,用 C++ 调制而成,我们的目标是高性能!我们可运行在标准的 Linux 发行版中,包括 FreeBSD 和 Mac OS X。

安装 rTorrent

# apt-get install rtorrent    (基于 APT 的系统,如 Debian,Ubuntu)
# yum install rtorrent        (基于 YUM 的系统,如 RHEL,Fedora)

检查有没有安装成功,运行下面命令试试:

# rtorrent

rTorrent Command Line Tool

rTorrent 的用法

下面是 rTorrent 比较常用的功能:

  • CTRL+ q – 退出 rTorrent。
  • CTRL+ s – 开始下载。
  • CTRL+ d – 暂停下载任务,或删除己被暂停的下载任务。
  • CTRL+ k – 关闭一个正在下载的任务
  • CTRL+ r – 在开始上传、下载之前,使用 Hash 检查文件,确保文件的完整性。
  • CTRL+ q – 按再次这个组合键,rTorrent 无条件退出。
  • Left Arrow Key – 回退到上个页面。
  • Right Arrow Key – 前进到下个页面。

2. Wget

Wget 是一个 GNU 项目,它的名称参考了 World Wide Web (WWW)。Wget 在递归下载方面做得很好,你可以将整个网站的内容都下到本地,然后访问本地的 HTML 文件。它支持多种操作系统:Windows,Mac,Linux。它支持多种协议,可通过 HTTP,HTTPS 和 FTP 下载文件。它可以对整个网站做一个镜像(完全将目标网站的文件下载到本机),支持代理,支持断点传输(即下载可暂停)。

安装 Wget

Wget 也是一个 GNU 项目,在标准 Linux 发行版中都有内置,就是说你不用下载安装它就可以使用了。万一,它没有被默认安装,你也可以通过 APTYUM 安装。

# apt-get install wget    (基于 APT 的系统,如 Debian,Ubuntu)
# yum install wget        (基于 YUM 的系统,如 RHEL,Fedora)

Wget 的用法

下载一个文件:

# wget http://www.website-name.com/file

下载整个网站:

# wget -r http://www.website-name.com

下载指定类型的文件(比如 PDF 和 PNG):

# wget -r -A png,pdf http://www.website-name.com

下面是一张 Wget 的截图,我们正在把 Yahoo.com 网站整个都镜像下来。

Wget Command Line File Download

关于 wget 的更多用法,参考Wget 的10个的用法

3. cURL

cURL 是一个客户端工具,支持多种文件传输协议,比如 FTP, HTTP, FTPS, TFTP, TELNET, IMAP, POP3 等等。不像 wget 等工具,cURL 只是一个单纯的下载器,支持 LDAP, POP3,支持代理下载,支持断点续传。

安装 cURL

大多数发行版都默认安装了 cURL,如果没有,可通过 aptyum 下载:

# apt-get install curl    (基于 APT 的系统,如 Debian,Ubuntu)
# yum install curl        (基于 YUM 的系统,如 RHEL,Fedora)

cURL 基本用法

# curl www.tecmint.com

Curl Data Download

Curl Download

4. w3m

W3m 是基于文本的网页浏览器,使用 GPL 协议,支持 tables, frames, color, SSL 连接,支持内嵌图片,以快速闻名。

安装 w3m

W3m 也是大多数发行版的默认配置,也可通过 aptyum 安装。

# apt-get install w3m    (基于 APT 的系统,如 Debian,Ubuntu)
# yum install w3m        (基于 YUM 的系统,如 RHEL,Fedora)

w3m 的基本用法

# w3m www.tecmint.com

w3m Text Based Web Browser

5. Elinks

Elinks 是一个免费的基于本文的网页浏览器,支持 HTTP,支持 HTTP Cookie,支持 PerlRuby 写的脚本,支持网页标签,支持鼠标,可彩色显示页面,支持 HTTP, FTP,SMB,IPv4,IPv6

安装 Elinks

大多数发行版已经默认安装了 Elinks,如果没有,通过 aptyum 安装。

# apt-get install elinks    (基于 APT 的系统,如 Debian,Ubuntu)
# yum install elinks        (基于 YUM 的系统,如 RHEL,Fedora)

Elinks的基本用法

elinks www.tecmint.com

Elinks Command Line Web Browsing


via: http://www.tecmint.com/command-line-tools-for-downloading-file-and-browsing-websites/

译者:bazz2 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出