curl and wget
写在前面:
a. 对比curl 和 wget 的相同和不同点 来记忆
a-1
curl url 直接将请求内容输出到标准输出。 如果下载不是瞬时间完成,会显示下载进度条,如果向取消,加-s :
wget url 将请求内容下载到当前目录,名字是请求的文件名字。同时会显示域名解析 和 端口连接信息,如果想屏蔽,加 -q :
a-2
curl 请求常用 -Lvso -o 将请求内容输出到指定文件, -L follow 301 and 302 , -v 输出请求头和响应头信息。
wget 请求常用 -SO -O 将请求内容输出到指定文件 , -S 打印响应头。curl 不能实现 输出响应头信息的同时将请求内容下载下来, 只能实现 输出HTTP头和返回内容 ,用 -i 参数。
a-3
curl -I and -i 区别, -I 只输出响应头信息,不返回请求内容, -i 输出HTTP头和返回内容。
curl 的post 请求,
curl 只跟 -d 或--data ,代表是post 请求, -X POST 可加可不加,post 请求 也是有返回内容的(不是我以前自认为的理解 无返回内容),如果请求的格式是json 格式,即 ”Content_Type:Application/json “,返回的是json字符串,想要 直观的查看字符串的内容,要将字符串 转换成json 格式化,网上搜索 json格式化 即可。
curl and wget 详细的命令,如下
1. curl
直接跟 url ,会将url 的内容直接输出到桌面,同时会显示下载进度条, -s 可屏蔽这个输出
-s silent -v 详细输出 -L 302 追踪
-w 自定义输出格式 如
-w %{http_code} curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n
-x 代理
-I 只输出请求header , -i include 请求内容和 header
-A 自定义user-agent
curl -A "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
-H 自定义header
默认请求内容输出到屏幕 , -o 输出重定向, 可以直接请求https
-d POST 请求发送 json 数据, 如
curl -H "Content-type:Application/json" -d '{"hostname": "a-1-1", "result": {"hostname": "hostname", "network": [{"DEVICE": "bond0", "IPADDR": "1.1.1.1"}, {"DEVICE": "bond1", "IPADDR": "10.11.100.32"}], "service_tag": "060580bD40"}}' "url"
https 访问加代理方式 --resolv blog.csdn.net:443:47.95.47.253
curl 组合使用命令
-Lvo /dev/null 访问内容输出到 /dev/null -o 访问结果 输出详情 -v follow 第三方跳转 -L
-s 访问结果silence ,传输速度 不输出,curl 默认显示传输速度
--limit-rate number 限速,可以识别单位,不加单位默认是 比特, B ,不是 b 字节。
wget 参数
-O 下载内容输出位置,默认输出到当前目录,名字为url 的文件名,-O 自定义名字
-S print server response
-q quite
--limit-rate=1K 限速 1KB/s, 和 curl 限速一样,不加单位,默认是B,字节,不是b,比特,命令和curl 区别是 curl 无= wget 跟 =
-O 跟- 代表下载内容输出到 stand output ,同 curl 默认输出,多用于 直接执行下载脚本内容。如 wget -qO - http://url/a.sh |bash
curl 如何访问ipv6 地址:
提示: 将ipv6 地址 放到 [] 里, 其他语法照旧:
如:curl "http://[2409:8c44:2f00:300:8001::239]:80/m.html"
”“ 加不加 无所谓
curl 报错 curl: (3) [globbing] error: bad range specification after pos 9
解决办法: 加 -g :
-g/--globoff
This option switches off the "URL globbing parser". When you set this option, you can specify URLs that contain the letters {}[] without having them being interpreted by curl itself. Note that these letters are not normal legal
URL contents but they should be encoded according to the URI standard.
翻译:
-g/ --globoff 通配符关闭 globbing 通配符
这个选项 是 关闭 “URL 通配符 解析” 。当你设置了此参数,你就可以指定 那些包含 字符 {} 和 [] 的 URL 不用翻译这些字符(即不把这两个字符当通配符对待)。注意 这些字符 并不是 正常合法的URL 包含的,但它们 应当被 依据 URI 标准 被 编码。
curl and wget的更多相关文章
- linux包-下载-curl与wget
[root@localhost ~]# rpm -qa|grep curllibcurl-7.19.7-37.el6_4.x86_64python-pycurl-7.19.0-8.el6.x86_64 ...
- Linux学习:curl 与 wget命令
curl和wget命令都是Linux下的工具,可以用来下载文件. 一.wget 例1: wget http://www.minjieren.com/wordpress-3.1-zh_CN.zip 下载 ...
- Shell curl 和 wget 使用代理IP
Linux Shell 提供两个非常实用的命令来爬取网页,它们分别是 curl 和 wget curl 和 wget 使用代理 curl 支持 http.https.socks4.socks5 wge ...
- curl与wget
curl 和wget 区别 使用方法 可参考 curl vs Wget 1.curl是libcurl这个库支持的,wget是一个纯粹的命令行命令.2.curl支持更多的协议.curl supports ...
- curl和wget的区别和使用
curl和wget基础功能有诸多重叠,如下载等. 非要说区别的话,curl由于可自定义各种请求参数所以在模拟web请求方面更擅长:wget由于支持ftp和Recursive所以在下载文件方面更擅长.类 ...
- curl 与wget的区别
CURL与wget的区别 当想要直接通过linux 命令行下载文件,马上就能想到两个工具:wget 和 CURL.它们有很多一样的特征,可以很轻易的完成一些相同的任务,虽然它们有一些相似的特征,但它们 ...
- 开源http协议库curl和wget的区别和使用
curl和wget基础功能有诸多重叠,如下载等. 在高级用途上的curl由于可自定义各种请求参数所以长于模拟web请求,用于测试网页交互(浏览器):wget由于支持ftp和Recursive所以长于下 ...
- linux下载利器之curl和wget的区别
linux下载利器-------curl和wget的区别 curl和wget基础功能有诸多重叠,如下载等. 在高级用途上的curl由于可自定义各种请求参数所以长于模拟web请求,用于测试网页交互(浏览 ...
- Linux命令发送Http的get或post请求(curl和wget两种方法)
Http请求指的是客户端向服务器的请求消息,Http请求主要分为get或post两种,在Linux系统下可以用curl和wget命令来模拟Http的请求.下面就来介绍一下Linux系统如何模拟Http ...
- curl 转 wget
curl 转 wget // sed -e 's@-H @--header=@g;s@^curl @wget @g;s@--compressed$@@g' $crf var curlStr = `cu ...
随机推荐
- 05—动态sql
1.创建表 CREATE TABLE tb_employee ( ID INT(11) PRIMARY KEY AUTO_INCREMENT, loginname VARCHAR(18), PASSW ...
- Web自动化简介
在迭代中时,先写出粗略的自动化测试用例,不是非常精准的一些提示,等到项目上线后,提示文案已经确定,再完善用例,使之成为一个完整的自动化测试工程. 用excel管理测试数据,读取效率比较低,需要读取.数 ...
- 转:JMeter5的If Controller操作解析
问题描述 在JMeter中添加了If Controller控制器,然后再控制器的表达式输入框中输入了预先构造的为“真”条件,执行Run发现结果树中并没有监控到执行的记录. 问题分析 在最新版JMete ...
- Python常用模块之hashlib模块
1.hashilib模块的功能 python的hashlib提供了常见的摘要算法,如MD5, SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换成一 ...
- Jmeter工具做接口测试
一.安装Jmeter 1.安装JDK ①下载jdk,到官网下载jdk,地址:http://jmeter.apache.org/download_jmeter.cgi ② 安装jdk(Oracle官网下 ...
- HearthBuddy炉石兄弟 格雷迈恩
getDecks(); 设置 private void getDecks() { Dictionary<string, int> tmpDeck = new Dictionary<s ...
- goland 可用注册码(license)
N757JE0KCT-eyJsaWNlbnNlSWQiOiJONzU3SkUwS0NUIiwibGljZW5zZWVOYW1lIjoid3UgYW5qdW4iLCJhc3NpZ25lZU5hbWUiO ...
- leetcode39 组合总和
这道题想到的就是dfs,在累加的和大于或等于target时到达递归树的终点. 代码如下: class Solution { public: vector<vector<int>> ...
- docker内时间问题
修改配置文件来修改时区1.修改/etc/sysconfig/clock ZONE=Asia/Shanghai 2.rm /etc/localtime 3.链接到上海时区文件 ...
- ctf密码学------密文解码python脚本(凯撒解密)
题目来源实验吧 分析题意,说是困在栅栏中,所以将字符栅栏解密看看有什么,利用工具CTFcraktools 得到三条密文 然后说是密码是凯撒,在将四栏依次凯撒解码,寻找可能的key,这里很显然,在尝试第 ...