• 每天一个Linux命令——curl


    一、命令简介

    curl 命令使用 HTTP、HTTPS、FTP、FTPS、SCP、SFTP、TFTP、DICT、TELNET、LDAP或FILE支持的协议之一,将数据传输到网络服务器或从网络服务器传输数据。它非常适合在 Shell 脚本中使用。

    curl 命令提供代理支持,用户身份验证,FTP 上传,HTTP 发布,SSL 连接,cookie,文件传输恢复,metalink 和其他功能。

    非常值得一看的 Curl 用法指南

    二、语法格式

    curl [options] [URL...]
    

    三、选项说明

    -A  #用户代理
    -b  #发送 Cookie 信息
    -c  #将 Cookie 写入文件
    -d  #发送 POST 请求的数据体
    -e  #设置 HTTP 的标头 Referer 字段
    -F  #向服务器上传文件
    -G  #构造 URL 的查询字符串
    -H  #添加 HTTP 请求的标头
    -i  #打印服务器回应的 HTTP 标头
    -I  打印服务器回应的 HEAD 标头
    -k  #跳过 SSL 检测
    -L  #跟随服务器的重定向
    –limit-rate   #限制请求和回应的带宽
    -o  #将服务器的回应保存成文件(下载文件,然后重新命名)
    -O  #将服务器的回应保存成文件(下载多个文件)
    -s  #不输出错误和进度信息
    -S  #只输出错误信息
    -u  #设置认证的用户名和密码
    -v  #打印调试信息
    -x  #设置请求代理
    -X  #指定请求的方法
    

    四、应用举例

    1、打印版本信息

    $ curl --version
    curl 7.29.0 (x86_64-redhat-linux-gnu) libcurl/7.29.0 NSS/3.36 zlib/1.2.7 libidn/1.28 libssh2/1.4.3
    Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp 
    Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz unix-sockets
    

    2、下载文件

    $ curl -O http://nginx.org/download/nginx-1.18.0.tar.gz
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100 1015k  100 1015k    0     0   177k      0  0:00:05  0:00:05 --:--:--  237k
    
    $ ll nginx-1.18.0.tar.gz 
    -rw-r--r-- 1 root root 1039530 3月  24 23:05 nginx-1.18.0.tar.gz
    
    $ curl -o $(date +%F)_download_nginx.tar.gz http://nginx.org/download/nginx-1.18.0.tar.gz
    # 将下载下来的文件重新改名成新的指定的文件名
    $ ll *nginx*
    -rw-r--r-- 1 root root 1039530 3月  24 23:08 2021-03-24_download_nginx.tar.gz
    -rw-r--r-- 1 root root 1039530 3月  24 23:05 nginx-1.18.0.tar.gz
    

    3、POST请求举例

    $ curl http://www.baidu.com
    
    $ curl -i http://www.baidu.com
    # 显示全部信息
    
    $ curl -l http://www.baidu.com
    # 只显示头部信息
    
    $ curl -v http://www.baidu.com
    # 只显示get请求全过程解析信息
    

    4、登录服务器

    $ curl -u mingongge:passwdPassWd  https://github.com/mingongge/
    $ curl -u mingongge  https://github.com/mingongge/
    Enter host password for user 'mingongge':
    

    5、上传文件(如上传文件到文件服务器)

    $ curl -T user1.png ftp://username:password@ip:port/www/web/user_download/
    

    6、打印下载进度条

    $ curl -# -O  http://nginx.org/download/nginx-1.18.0.tar.gz
    
    *************** 当你发现自己的才华撑不起野心时,就请安静下来学习吧!***************
  • 相关阅读:
    30 分钟快速入门 Docker 教程
    python functools.wraps
    计算机科学中最重要的32个算法
    JDBC的作用及重要接口
    SSO单点登录--支持C-S和B-S
    谈谈Sql server 的1433端口
    屏蔽:粘贴到KindEditor里,IE下弹出框报”对象不支持moveToElementText属性或方法“错误的提示
    markdown
    ddd
    python进阶学习(一)--多线程编程
  • 原文地址:https://www.cnblogs.com/lvzhenjiang/p/14579533.html
Copyright © 2020-2023  润新知