shell 是個好東西,建議學習下:)html
本文將講解如何用shell開發自動化腳本刷新CDN緩存。
爲何會作這個小腳本,根本緣由仍是懶...
公司的運維,很貼心開發了一個form表單的網頁,專門給前端同窗刷新CDN緩存。雖然能夠知足要求,可是每上一次項目,就得打開該網頁,輸入SecretKey
和須要刷新的URL地址,很心累。
有痛點,那麼就嘗試解決它!前端
#!bin/bash
# 刷新cdn
urls="https://***.com/page1;\
https://***.com/page2;"
curl \
-X POST \
--data-urlencode "qq=00" \
--data-urlencode "ws=01" \
--data-urlencode "SecretKey=***" \
--data-urlencode "flushurl=${urls}" \
http://127.0.0.1/
複製代碼
凡是在客戶端能夠跑的命令,均可以用shell集成,作自動化。linux
curl是一種命令行工具,做用是發出網絡請求,而後獲得和提取數據,顯示在"標準輸出"(stdout)上面。ios
主要了解兩種方式:get和post。git
curl example.com/a.html?data=xxx
複製代碼
curl -X POST --data "data=xxx" example.com/form.cgi
複製代碼
curl -X POST--data-urlencode "date=April" example.com/form.cgi
複製代碼
#!bin/bash
curl -X POST --data-urlencode "qq=00" --data-urlencode "ws=01" --data-urlencode "SecretKey=***" --data-urlencode "flushurl=https://***.com/page1;https://***.com/page2;" http://127.0.0.1/
複製代碼
要實現的目的基本達到,可是代碼不友好,修改不方便。github
#!bin/bash
urls="https://***.com/page1;\
https://***.com/page2;"
curl \
-X POST \
--data-urlencode "qq=00" \
--data-urlencode "ws=01" \
--data-urlencode "SecretKey=***" \
--data-urlencode "flushurl=${urls}" \
http://127.0.0.1/
複製代碼
Git Bash
工具跑shell命令例子:bash cdn.sh
shell
有前端同事,用commander
+axios
作了一個刷新CDN工具,可是,沒我這個來得簡單粗爆:)
shell就是這麼好用~axios
喜歡我文章的朋友,能夠經過如下方式關注我:緩存