Linux 下载文件命令(wget)

时间:2022-03-22 09:17:25

wget是Linux最常用的下载命令, 一般的使用方法是: wget + 空格 + 要下载文件的url路径

例如: # wget http://www.linuxsense.org/xxxx/xxx.tar.gz

简单说一下-c参数, 这个也非常常见, 可以断点续传, 如果不小心终止了, 可以继续使用命令接着下载

例如: # wget -c http://www.linuxsense.org/xxxx/xxx.tar.gz

下面详细阐述wget的用法:

wget是一个从网络上自动下载文件的*工具。它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理.

所谓的自动下载是指,wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统,启动一个wget下载任务,然后退出系统,wget将在后台执行直到任务完成,相对于其它大部分浏览器在下载大量数据时需要用户一直的参与,这省去了极大的麻烦。

wget可以跟踪HTML页面上的链接依次下载来创建远程服务器的本地版本,完全重建原始站点的目录结构。这又常被称作”递归下载”。在递归下载的 时候,wget遵循Robot Exclusion标准(/robots.txt). wget可以在下载的同时,将链接转换成指向本地文件,以方便离线浏览。

wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性.如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完 毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。

wget的常见用法

wget的使用格式

Usage: wget [OPTION]… [URL]…

* 用wget做站点镜像:

wget -r -p -np -k http://dsec.pku.edu.cn/~usr_name/

# 或者

wget -m http://www.tldp.org/LDP/abs/html/

* 在不稳定的网络上下载一个部分下载的文件,以及在空闲时段下载

wget -t 0 -w 31 -c http://dsec.pku.edu.cn/BBC.avi -o down.log &

# 或者从filelist读入要下载的文件列表

wget -t 0 -w 31 -c -B ftp://dsec.pku.edu.cn/linuxsoft -i filelist.txt -o down.log &

上面的代码还可以用来在网络比较空闲的时段进行下载。我的用法是:在mozilla中将不方便当时下载的URL链接拷贝到内存中然后粘贴到文件filelist.txt中,在晚上要出去系统前执行上面代码的第二条。

* 使用代理下载

wget -Y on -p -k https://sourceforge.NET/projects/wvware/

代理可以在环境变量或wgetrc文件中设定

# 在环境变量中设定代理

export PROXY=http://211.90.168.94:8080/

# 在~/.wgetrc中设定代理

http_proxy = http://proxy.yoyodyne.com:18023/

ftp_proxy = http://proxy.yoyodyne.com:18023/

wget各种选项分类列表

* 启动

-V, –version           显示wget的版本后退出

-h, –help              打印语法帮助

-b, –background        启动后转入后台执行

-e, –execute=COMMAND   执行`.wgetrc’格式的命令,wgetrc格式参见/etc/wgetrc或~/.wgetrc

* 记录和输入文件

-o, –output-file=FILE     把记录写到FILE文件中

-a, –append-output=FILE   把记录追加到FILE文件中

-d, –debug                打印调试输出

-q, –quiet                安静模式(没有输出)

http://www.itqun.Net/content-detail/511328.html

http://www.guanwei.org/post/LINUXnotes/05/Linux-Wget-download-method.html

LINUX命令行下以HTTP方式下载文件的方法

Post by mrchen, 2010-5-23, Views:101

原创文章如转载,请注明:转载自冠威博客 [ http://www.guanwei.org/ ]

本文链接地址:http://www.guanwei.org/post/LINUXnotes/05/Linux-Wget-download-method.html

顺便提一下。如果下载ftp服务器上的文件,可以用ftp命令。然后用get命令下载文件

对于喜欢命令行操作及追求高效率、高速度下载的朋友,推荐使用命令行下载工具。命令行工具不但使用方便,而且大多具有很高的下载速度及下载效率,尤其适合于大批量下载文件。下面就为大家详细介绍一下这些工具。

Wget

Wget是一个十分常用命令行下载工具,多数Linux发行版本都默认包含这个工具。如果没有安装可在http://www.gnu.org/software/wget/wget.html下载最新版本,并使用如下命令编译安装:

#tar zxvf wget-1.9.1.tar.gz

    #cd wget-1.9.1 #./configure

    #make #make install

它的用法很简单,Wget使用格式如下: #wget [选项] [下载地址]

1.Wget常用参数

◆-b:后台下载,Wget默认的是把文件下载到当前目录。

◆-O:将文件下载到指定的目录中。

◆-P:保存文件之前先创建指定名称的目录。

◆-t:尝试连接次数,当Wget无法与服务器建立连接时,尝试连接多少次。

◆-c:断点续传,如果下载中断,那么连接恢复时会从上次断点开始下载。

◆-r:使用递归下载

除了上述常用功能,Wget还支持HTTP和FTP代理功能,编辑其配置文件“/etc/wgetrc”即可。具体方法是使用VI编辑器打开上述文 件,将 “http_proxy”和“ftp_proxoy”前的#去掉,然后在这两项后输入相应的代理服务器的地址,保存退出即可。此外,Wget还可下载整个 网站,如下载整个Man手册中心。只需输入如下命令即可: #wget -r -p -np -k http://man.chinaunix.net

其中-r参数是指使用递归下载,-p是指下载所有显示完整网页所以需要的文件,如图片等,-np是指不搜索上层目录,-k则是指将绝对链接转换为相对链接。

Prozilla

Prozilla也是一个十分流行的命令行下载工具,支持多线程下载和断点续传功能。可到http://prozilla.genesys.ro/下载最新的1.3.7.4安装包,下载安装包后使用如下命令进行安装:

#tar zxvf prozilla-1.3.7.4.tar.gz

    #cd prozilla-1.3.7.4

    #./configure #make

    #make install

Prozilla命令格式如下: #proz [参数] [下载地址] 常用的选项有:

◆-k=n :设置n个线程下载。不加此参数指定线程数,Prozilla默认为4线程下载。

◆-P, --directory-prefix=DIR:指定将下载的文件保存在DIR/目录。

◆-r, --resume:继续下载未完成的文件。如果要指定线程数下载可用如下命令: #proz -k=5 http://64.12.204.21/pub/mozilla.org/firefox/releases/1.0/linux-i686/zh-CN/firefox-1.0.installer.tar.gz 这样便以5线程进行文件的下载,并将文件保存到当前目录。和Wget一样,Prozilla也提供了续传功能,下载中断后,重新输入上述命令,就会出现提 示续传,按R键就可继续下载了。

MyGet

MyGet目标设计成一个可扩展的,拥有丰富界面的多线程下载工具,它支持HTTP、FTP、HTTPS、MMS、RTSP等协议。在 http://myget.sourceforge.net/release/myget-0.1.0.tar.bz2下载其最新版本0.1.0,下载后 使用如下命令安装:

#tar jxvf myget-0.1.0.tar.bz2

    #cd myget-0.1.0 #./configure

    #make

    #make install

MyGet命令格式如下: #mytget [选项] [下载地址] 常用的选项:

◆-d [目录]:指定下载到的文件在本地存放的位置,默认当前目录。

◆-f [文件]:指定下载文件名称。

◆-h:帮助选项。

◆-n [线程数]:下载线程数量,默认为4个。

◆-x [代理服务器地址]:设置代理服务器地址,如“-x http://user:password@host:port”。 MyGet常用的形式如下: #mytget -d /root/ -n 10 http://lumaqq.linuxsir.org/download/patch/lumaqq_2004t_patch_2005.07.21.00.00.zip

Linuxdown

Linuxdown是一个命令行多线程下载工具,最多可支持30线程的下载。在https://gro.clinux.org/frs /download.PHP/1015/linuxdown-1.0.0.tar.gz下载最新的1.1.0版本。然后使用如下命令进行编译安装:

#tar zxvf linuxdown-1.1.0.tar.gz

    #cd dandelion/

    #make

    #make install

Linuxdown格式为: #linuxdown [下载地址] [选项] [线程数] 需要注意的是下载地址和选项都需要西文引号括起来,线程数不可超过30个。一个典型的下载如下: #linuxdown "http://lumaqq.linuxsir.org/download/patch/lumaqq_2004t_patch_2005.07.21.00.00.zip" 30

Curl

Curl也是Linux下不错的命令行下载工具,小巧、高速,唯一的缺点是不支持多线程下载。在http://curl.haxx.se/download/curl-7.14.0.tar.gz下载最新版本。下载后便可使用如下命令编译安装:

#tar zxvf curl-7.14.0.tar.gz

    #cd curl-7.14.0/

    #./configure

    #make

    #make test

    #make install

Curl使用格式如下: #curl [选项][下载地址] Curl典型下载如下: #curl -O http://10.1.27.10/~kennycx/tools/lumaqq_2004-linux_gtk2_x86_with_jre.tar.gz 使用Curl下载一个文件并保存到当前目录。此外,Curl虽然不支持多线程下载,但它可同时下载多个文件或下载文件的某一部分,可使用如下命令实现: #curl -r 0-199 http://www.netscape.com/ 获得文件的前200 bytes。对于常用的代理下载Curl也可轻松实现,具体操作如下:
#curl -x 10.1.27.10:1022 ftp://ftp.funet.fi/README 使用代理地址为10.1.27.10端口为1022的代理服务器下载一个文件。 #curl -U user:passwd -x 10.1.27.10:1022 ftp://ftp.funet.fi/README 如果代理服务器需要特别的验证,则需要在user:passwd处输入合法的帐号和密码。

Axel

Axel是命令行下的多线程下载工具,支持断点续传,速度通常情况下是Wget的几倍。可在http://www.linuxfans.org /nuke/modules.php?name=Site_Downloads&op=mydown&did=1697下载。下载后使用 如下命令编译安装:

#tar zxvf axel-1.0a.tar.gz

    #cd axel-1.0a/

    #./configure

    #make

    #make install

基本的用法如下: #axel [选项] [下载目录] [下载地址] 一个典型下载如下: #alex -n 10 -o /home/kennycx/ http://10.1.27.10/~kennycx/tools/lumaqq_2004-linux_gtk2_x86_with_jre.tar.gz 用10线程将指定路径的文件下载到/home/kennycx/这个目录下。

本文详细介绍了Linux中常用的下载工具,这些下载工具功能上各有千秋,使用上都比较简单,所以无论是初学者还是Linux高手总有一款适合你。

Linux下用命令行也可以下载HTTP网站的文件。顺便提一下,如果是ftp网站可以用ftp命令然后get XXX。