curl 命令相关技巧

指定网卡并格式化输出

curl 命令支持使用 --interface 参数指定网卡进行请求,并可以使用 -w 参数进行格式化输出:

~# curl --interface eth2 https://www.baidu.com/ -s -o /dev/null -w '%{local_ip}\n%{remote_ip}\n'

上面就是输出 curl 命令使用的本地和远程 IP 地址。

用户认证

例如下载文件需要用户认证,可以增加 -u 参数指定用户名和密码:

~# curl -L -O --anyauth -u "test:password" "http://XXXX/yyy.zip"

上面指定了 --anyauth 参数,curl 命令会自动判断认证方式。

如果指定 --anyauth 参数不能正常工作,就可能需要手工指定认证方式:

  • --basic
  • --digest
  • --ntlm
  • --negotiate