zoukankan      html  css  js  c++  java
  • 15 shell之curl下载文件

    前言

        最近忙于离职的工作交接,有日子没学习了,懒惰啊!

    正文

    1.需求

    譬如某一天我们做了一个软件。

    有时我们的软件需要自动根据到网上去获取当前版本是否要更新。如果"网上"需要更新则下载一些必要的文件

    2.shell实现

    LOCAL_VER=`cat version`

    REMOTE_VER=`curl http://www..@@@..com/test/conf.txt -s | sed -n '2p'` # -s 静默模式,不显示细节

    #echo $REMOTE_VER

    if [ $LOCAL_VER -lt $REMOTE_VER ]

    then

    # echo "begin update"

    GET_UPDATE=`curl -d "password=123" http://www.@@@.com/test/update.php -s` #-d post 提交

    wget $GET_UPDATE

    echo "2">version

    fi

    3.思路梳理

    首先判断本地的version文件,读取。

    用curl访问远程conf.txt,然后取第二行

    本地的 版本和远程版本进行比较,如果版本小则;

    1)模拟post访问update.php,并获取需要下载的地址

    2)使用wget下载下来

     

    4.知识点梳理

    (1)curl "命令行下的浏览器" 文件传输工具

    curl http://www.baidu.com

    以上都是用GET的方式直接访问网页。

    其实curl很牛逼的地方还能模拟提交

    curl -d "这里写post参数" 这里写网址

    (2)数字比较

    -gt是大于的意思 large than

    -lt是小于 less than

    -eq是等于 equal

    -ne是不等于not equal

    -ge是大于等于 large equal
         -le是小于等于  less equal

    (3)curl 静默模式

    curl 网址

    会正常显示

     

             赋值给你变量会显示统计信息

             result=`curl 网址`

             echo $result 会出现统计信息

                

            静默模式:不显示统计信息

            result=`curl 网址 -s`

    (4)curl 网址 需要等待网站相应

    所以用 语句1 | 语句2

                代表只有语句1执行完的结果,作为语句2的参数

                之后用sed 读取下就OK了

     

    尾声、

    在人生中,赢家并不是那些有优秀基因的人,或是那些最有天分的人,而是那些最不屈不挠的人!当他们跌倒了,他们总是不断的爬起来,继续做,继续做。 no pain no gains (^ _ ^) !!
  • 相关阅读:
    2020-09-24 刷题记录
    Codeforces Round #672 (Div. 2) A
    力扣部分刷题记录
    CF 1500-1800训练 A
    AtCoder Beginner Contest 179
    Educational Codeforces Round 95 (Rated for Div. 2) A
    AtCoder Beginner Contest 178 A
    springboot-------整合mybatis-plus
    机器学习入门--------numpy学习
    机器学习入门--------matplotlib学习
  • 原文地址:https://www.cnblogs.com/fatsnake/p/5874228.html
Copyright © 2011-2022 走看看