linux curl 命令详解

linux curl是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称url为下载工具。

1,抓取页面内容到一个文件中

[[email protected] mytest]# curl -o home.html  http://blog.51yip.com

[[email protected] mytest]# curl -o home.html  http://blog.51yip.com2,用-O(大写的),后面的url要具体到某个文件,不然抓不下来。我们还可以用正则来抓取东西

[[email protected] mytest]# curl -O http://blog.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg

[[email protected] mytest]# curl -O http://blog.51yip.com/wp-content/uploads/2010/[0-9][0-9]/aaaaa.jpg

[[email protected] mytest]# curl -O http://blog.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg

[[email protected] mytest]# curl -O http://blog.51yip.com/wp-content/uploads/2010/[0-9][0-9]/aaaaa.jpg3,模拟表单信息,模拟登录,保存cookie信息

[[email protected] mytest]# curl -c ./cookie_c.txt -F log=aaaa -F pwd=****** http://blog.51yip.com/wp-login.php

[[email protected] mytest]# curl -c ./cookie_c.txt -F log=aaaa -F pwd=****** http://blog.51yip.com/wp-login.php4,模拟表单信息,模拟登录,保存头信息

[[email protected] mytest]# curl -D ./cookie_D.txt -F log=aaaa -F pwd=****** http://blog.51yip.com/wp-login.php

[[email protected] mytest]# curl -D ./cookie_D.txt -F log=aaaa -F pwd=****** http://blog.51yip.com/wp-login.php-c(小写)产生的cookie和-D里面的cookie是不一样的。

5,使用cookie文件

[[email protected] mytest]# curl -b ./cookie_c.txt  http://blog.51yip.com/wp-admin

[[email protected] mytest]# curl -b ./cookie_c.txt  http://blog.51yip.com/wp-admin6,断点续传,-C(大写的)

[[email protected] mytest]# curl -C -O http://blog.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg

[[email protected] mytest]# curl -C -O http://blog.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg7,传送数据,最好用登录页面测试,因为你传值过去后,curl回抓数据,你可以看到你传值有没有成功

[[email protected] mytest]# curl -d log=aaaa  http://blog.51yip.com/wp-login.php

[[email protected] mytest]# curl -d log=aaaa  http://blog.51yip.com/wp-login.php8,显示抓取错误,下面这个例子,很清楚的表明了。

[[email protected] mytest]# curl -f http://blog.51yip.com/asdf

curl: (22) The requested URL returned error: 404

[[email protected] mytest]# curl http://blog.51yip.com/asdf

<HTML><HEAD><TITLE>404,not found</TITLE>

。。。。。。。。。。。。

[[email protected] mytest]# curl -f http://blog.51yip.com/asdf

curl: (22) The requested URL returned error: 404

[[email protected] mytest]# curl http://blog.51yip.com/asdf

<HTML><HEAD><TITLE>404,not found</TITLE>

。。。。。。。。。。。。9,伪造来源地址,有的网站会判断,请求来源地址。

[[email protected] mytest]# curl -e http://localhost http://blog.51yip.com/wp-login.php

[[email protected] mytest]# curl -e http://localhost http://blog.51yip.com/wp-login.php10,当我们经常用curl去搞人家东西的时候,人家会把你的IP给屏蔽掉的,这个时候,我们可以用代理

[[email protected] mytest]# curl -x 24.10.28.84:32779 -o home.html http://blog.51yip.com

[[email protected] mytest]# curl -x 24.10.28.84:32779 -o home.html http://blog.51yip.com11,比较大的东西,我们可以分段下载

[[email protected] mytest]# curl -r 0-100 -o img.part1 http://blog.51yip.com/wp-

content/uploads/2010/09/compare_varnish.jpg

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

Dload  Upload   Total   Spent    Left  Speed

100   101  100   101    0     0    105      0 --:--:-- --:--:-- --:--:--     0

[[email protected] mytest]# curl -r 100-200 -o img.part2 http://blog.51yip.com/wp-

content/uploads/2010/09/compare_varnish.jpg

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

Dload  Upload   Total   Spent    Left  Speed

100   101  100   101    0     0     57      0  0:00:01  0:00:01 --:--:--     0

[[email protected] mytest]# curl -r 200- -o img.part3 http://blog.51yip.com/wp-

content/uploads/2010/09/compare_varnish.jpg

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

Dload  Upload   Total   Spent    Left  Speed

100  104k  100  104k    0     0  52793      0  0:00:02  0:00:02 --:--:-- 88961

[[email protected] mytest]# ls |grep part | xargs du -sh

4.0K    one.part1

112K    three.part3

4.0K    two.part2

[[email protected] mytest]# curl -r 0-100 -o img.part1 http://blog.51yip.com/wp-

content/uploads/2010/09/compare_varnish.jpg

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

Dload  Upload   Total   Spent    Left  Speed

100   101  100   101    0     0    105      0 --:--:-- --:--:-- --:--:--     0

[[email protected] mytest]# curl -r 100-200 -o img.part2 http://blog.51yip.com/wp-

content/uploads/2010/09/compare_varnish.jpg

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

Dload  Upload   Total   Spent    Left  Speed

100   101  100   101    0     0     57      0  0:00:01  0:00:01 --:--:--     0

[[email protected] mytest]# curl -r 200- -o img.part3 http://blog.51yip.com/wp-

content/uploads/2010/09/compare_varnish.jpg

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

Dload  Upload   Total   Spent    Left  Speed

100  104k  100  104k    0     0  52793      0  0:00:02  0:00:02 --:--:-- 88961

[[email protected] mytest]# ls |grep part | xargs du -sh

4.0K    one.part1

112K    three.part3

4.0K    two.part2用的时候,把他们cat一下就OK了,cat img.part* >img.jpg

12,不会显示下载进度信息

[[email protected] mytest]# curl -s -o aaa.jpg  http://blog.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg

[[email protected] mytest]# curl -s -o aaa.jpg  http://blog.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg13,显示下载进度条

[[email protected] mytest]# curl -# -O  http://blog.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg

######################################################################## 100.0%

[[email protected] mytest]# curl -# -O  http://blog.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg

######################################################################## 100.0%14,通过ftp下载文件

[[email protected] ~]$ curl -u 用户名:密码 -O http://blog.51yip.com/demo/curtain/bbstudy_files/style.css

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

Dload  Upload   Total   Spent    Left  Speed

101  1934  101  1934    0     0   3184      0 --:--:-- --:--:-- --:--:--  7136

[[email protected] ~]$ curl -u 用户名:密码 -O http://blog.51yip.com/demo/curtain/bbstudy_files/style.css

% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

Dload  Upload   Total   Spent    Left  Speed

101  1934  101  1934    0     0   3184      0 --:--:-- --:--:-- --:--:--  7136

或者用下面的方式 查看复制打印?

[[email protected] ~]$ curl -O ftp://用户名:密码@ip:port/demo/curtain/bbstudy_files/style.css

[[email protected] ~]$ curl -O ftp://用户名:密码@ip:port/demo/curtain/bbstudy_files/style.css

15,通过ftp上传

[[email protected] ~]$ curl -T test.sql ftp://用户名:密码@ip:port/demo/curtain/bbstudy_files/

[[email protected] ~]$ curl -T test.sql ftp://用户名:密码@ip:port/demo/curtain/bbstudy_files/

3

时间: 2024-10-27 01:35:54

linux curl 命令详解的相关文章

【转】linux curl 命令详解,以及实例

原文链接 http://www.codesky.net/article/201010/170043.html linux curl是一个利用URL规则在命令行下工作的文件传输工具.它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称url为下载工具. 一,curl命令参数,有好多我没有用过,也不知道翻译的对不对,如果有误的地方,还请指正. -a/--append 上传文件时,附加到目标文件 -A/--user-agent <string> 设置用户代理发送给服务器 - anyauth

linux curl 命令详解,以及实例

linux curl是一个利用URL规则在命令行下工作的文件传输工具.它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称url为下载工具. 一,curl命令参数,有好多我没有用过,也不知道翻译的对不对,如果有误的地方,还请指正. -a/--append 上传文件时,附加到目标文件 -A/--user-agent <string>  设置用户代理发送给服务器 - anyauth   可以使用“任何”身份验证方法 -b/--cookie <name=string/file>

Linux curl命令详解

http://aiezu.com/article/linux_curl_command.html 命令:curl 在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具.它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为下载工具. 语法:# curl [option] [url] 常见参数:复制代码 -A/--user-agent <string>              设置用户代理发送给服务器-b/--cookie &

Linux Shell学习--curl命令详解

curl命令详解 (1).curl介绍 作为一款强力工具,curl支持包括HTTP.HTTPS.FTP在内的众多协议.它还支持POST.cookie.认证.从指定偏移处下载部分文件.参照页(referer).用户代理字符串.扩展头部.限速.文件大小限制.进度条等特性.如果要和网页访问序列(web page usagesequence)以及数据检索自动化打交道,那么curl定能助你一臂之力. (2).curl的help curl --help Usage: curl [options...] <u

linux curl用法详解

linux ‍‍curl用法详解 ‍‍curl的应用方式,一是可以直接通过命令行工具,另一种是利用libcurl库做上层的开发.本篇主要总结一下命令行工具的http相关的应用, 尤其是http下载方面的:下一篇再讲基于libcurl库的开发. curl的命令行工具功能非常强大,这些数据交互的功能基本上都是通过URL方式进行的,我们先来看看curl对多个URL的灵活操作,这些规则使我们的 批处理需求应用起来非常方便. 1.用{}表示多个URL    如 http://site.{one,two,t

linux rm 命令详解及使用方法实战【初级】

rm:删除命令 前言: windows中的删除命令大家都不陌生,linux中的删除命令和windows中有一个共同特点,那就是危险,前两篇linux mkdir 命令详解及使用方法实战[初级]中我们就提到了rm命令,现在我们来详细介绍一下linux中删除文件和目录的命令, rm命令,rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除.对于链接文件,只是删除了链接,原有文件均保持不变. 名称 rm - remove files o

Linux netstat命令详解

Linux netstat命令详解 简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等. 输出信息含义 执行netstat后,其输出结果为 Active Internet connections (w/o servers)Proto Recv-Q Send-Q Local Address Foreign Address State

linux sort 命令详解

原文:http://www.cnblogs.com/51linux/archive/2012/05/23/2515299.html linux sort 命令详解 sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始! 1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出. [[email protected] programming]$ cat seq.txtba

linux dd 命令详解

1 磁盘管理 1.1 dd 1.1.1 功能说明 读取,转换并输出数据. 1.1.2 语法 dd [bs=<字节数>][cbs=<字节数>][conv=<关键字>][count=<区块数>][ibs=<字节数>][if=<文件>][obs=<字节数>][of=<文件>][seek=<区块数>][skip=<区块数>][--help][--version] 1.1.3 补充说明 dd可从标