curl
1.选项-o将下载数据写入到指定名称的文件中,使用选项-O将下载的数据写入到文件,必须使用文件的绝对地址,并使用--progress显示进度条:
curl http://man.linuxde.net/test.iso -o filename.iso --progress
######################################### 100.0%
2.用curl设置cookies 使用--cookie "COKKIES"选项来指定cookie,多个cookie使用分号分隔:
curl http://man.linuxde.net --cookie "user=root;pass=123456"
wget
wget(选项)(参数)
-a<日志文件>:在指定的日志文件中记录资料的执行过程;
-A<后缀名>:指定要下载文件的后缀名,多个后缀名之间使用逗号进行分隔;
-b:进行后台的方式运行wget;
-B<连接地址>:设置参考的连接地址的基地地址;
-c:继续执行上次终端的任务;
-C<标志>:设置服务器数据块功能标志on为激活,off为关闭,默认值为on;
-d:调试模式运行指令;
-D<域名列表>:设置顺着的域名列表,域名之间用“,”分隔;
-e<指令>:作为文件“.wgetrc”中的一部分执行指定的指令;
-h:显示指令帮助信息;
-i<文件>:从指定文件获取要下载的URL地址;
-l<目录列表>:设置顺着的目录列表,多个目录用“,”分隔;
-L:仅顺着关联的连接;
-r:递归下载方式;
-nc:文件存在时,下载文件不覆盖原有文件;
-nv:下载时只显示更新和出错信息,不显示指令的详细执行过程;
-q:不显示指令执行过程;
-nh:不查询主机名称;
-v:显示详细执行过程;
-V:显示版本信息;
--passive-ftp:使用被动模式PASV连接FTP服务器;
--follow-ftp:从HTML文件中下载FTP连接文件。
1.使用wget下载单个文件
wget http://www.linuxde.net/testfile.zip
2.下载并以不同的文件名保存
wget -O wordpress.zip http://www.linuxde.net/download.aspx?id=1080
3.wget限速下载
wget --limit-rate=300k http://www.linuxde.net/testfile.zip
4.使用wget断点续传
wget -c http://www.linuxde.net/testfile.zip
5.使用wget后台下载
wget -b http://www.linuxde.net/testfile.zip
Continuing in background, pid 1840.
Output will be written to 'wget-log'.
对于下载非常大的文件的时候,我们可以使用参数-b进行后台下载,你可以使用以下命令来察看下载进度:
tail -f wget-log
6.伪装代理名称下载
wget --user-agent="Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.204 Safari/534.16" http://www.linuxde.net/testfile.zip
7.下载多个文件
wget -i filelist.txt
首先,保存一份下载链接文件:
cat > filelist.txt
url1
url2
url3
url4
8.下载整个网站到本地。
wget --mirror -p --convert-links -P ./LOCAL URL
9.把下载信息存入日志文件
wget -o download.log URL
10.下载指定格式文件
wget -r -A.pdf url
可以在以下情况使用该功能: 下载一个网站的所有图片。 下载一个网站的所有视频。
下载一个网站的所有图片。
下载一个网站的所有PDF文件。
下载一个网站的所有视频。
11.FTP下载
使用wget匿名ftp下载:
wget ftp-url
使用wget用户名和密码认证的ftp下载:
wget --ftp-user=USERNAME --ftp-password=PASSWORD url
curl与wget对比
在高级用途上的curl由于可自定义各种请求参数所以长于模拟web请求,用于测试网页交互(浏览器);wget由于支持ftp和Recursive所以长于下载,用于下载文件(迅雷)。
1.下载文件
curl -O http://man.linuxde.net/text.iso #O大写,不用O只是打印内容不会下载
wget http://www.linuxde.net/text.iso #不用参数,直接下载文件
2.下载文件并重命名
curl -o rename.iso http://man.linuxde.net/text.iso #o小写
wget -O rename.zip http://www.linuxde.net/text.iso #O大写
3.断点续传
curl -O -C -URL http://man.linuxde.net/text.iso #C大写
wget -c http://www.linuxde.net/text.iso #c小写
4.限速下载
curl --limit-rate 50k -O http://man.linuxde.net/text.iso
wget --limit-rate=50k http://www.linuxde.net/text.iso
5.显示响应头部信息
curl -I http://man.linuxde.net/text.iso
wget --server-response http://www.linuxde.net/test.iso
6.wget利器--打包下载网站
wget --mirror -p --convert-links -P /var/www/html http://man.linuxde.net/