**:
curl命令使用了libcurl庫來實現,libcurl庫常用在c程式中用來處理http請求,curlpp是libcurl的乙個c++封裝,這幾個東西可以用在抓取網頁、網路監控等方面的開發,而curl命令可以幫助來解決開發過程中遇到的問題。
curl命令引數很多,這裡只列出我曾經用過、特別是在shell指令碼中用到過的那些。
-v/--verbose 小寫的v引數,用於列印更多資訊,包括傳送的請求資訊,這在除錯指令碼是特別有用。
-m/--max-time 指定處理的最大時長
-h/--header 指定請求頭引數
-s/--slient 減少輸出的資訊,比如進度
--connect-timeout 指定嘗試連線的最大時長
-x/--proxy 指定**伺服器位址和埠,埠預設為1080
-t/--upload-file 指定上傳檔案路徑
-o/--output 指定輸出檔名稱
-d/--data/--data-ascii 指定post的內容
--retry 指定重試次數
-e/--referer 指定引用位址
-i/--head 僅返回頭部資訊,使用head請求
[root@jfht ~]# curl
歡迎您 - 上海騰一
。此處省略掉網頁內容 。
以下是乙個tomcat監控指令碼的部分內容。
bash**
# usage: check_once
# 使用curl檢查網頁是否可以正常訪問,如果不能訪問就重啟tomcat。
check_once()
# usage: check_loop
# 每隔一分鐘檢查一次網頁是否正常
check_loop()
# usage: monitor
# 對path指定的本機網頁進行監控
# 2008.06.26
# 2010.09.20 add path parameter
monitor()
這個指令碼的執行方式是 monitor ,比如monitor main/index.html。下面是執行時輸出的日誌資訊片段。
2023年 10月 09日 星期六 15:20:38 cst tomcat check once
2023年 10月 09日 星期六 15:20:46 cst tomcat maybe ok
2023年 10月 09日 星期六 15:21:46 cst tomcat check once
2023年 10月 09日 星期六 15:21:57 cst tomcat maybe fault
tomcat is now running, not stopped: 0
tomcat is now running, not stopped: 1
tomcat is now running, not stopped: 2
tomcat is now running, not stopped: 3
tomcat is now running, not stopped: 4
tomcat is now running, not stopped: 5
tomcat is now running, not stopped: 6
tomcat is now running, not stopped: 7
tomcat is now running, not stopped: 8
tomcat is now running, not stopped: 9
tomcat killed use sigkill
tomcat stopped
starting tomcat
2023年 10月 09日 星期六 15:23:09 cst tomcat check once
2023年 10月 09日 星期六 15:23:09 cst tomcat maybe ok
2023年 10月 09日 星期六 15:24:09 cst tomcat check once
2023年 10月 09日 星期六 15:24:09 cst tomcat maybe ok
bash**
# 要檢查的網頁位址
url=""
# usage:
curlit()
# 只有min_alarm次訪問失敗時才告警
min_alarm=10
#
doit()
doit >>log/curlit.log 2>&1
乙個用於http post的指令碼。
bash**
#!/bin/sh
ms=1350514***x
tm=$(date +"%y%m%d%h%m%s")
dt=$(date +"%y%m%d")
cat
<?xml version="1.0" encoding="gbk" ?>
qztboss
t51000010
$tm$tm
$dt0
01$ms
14
1419
0151
$tm27
510001
]]>
eof
cat reqtmp.xml
url=""
curl --verbose --upload-file reqtmp.xml --header "content-type: text/xml"
"$url" --output rsptmp.xml
cat rsptmp.xml
bash**
# usage: do_sync_once
do_sync_once()
bash**
# usage: google_search
# google搜尋
google_search()
Linux 強大的 curl 命令
最近看 http權威指南 一直看到書上面說的客戶端構造http報文去請求服務端,於是乎,一直想我在linux下面如何去模擬http請求呢?後台在網上查,原來是可以通過curl命令請求的,先貼一下curl命令的強大功能 curl是乙個強大的命令列工具,它可以通過網路將資訊傳遞給伺服器或者從伺服器獲取資...
linux命令集錦之curl
curl curl o mygettext.html 將檔案儲存到本地並命名為gettext.html curl o 重定向curl l 斷點續傳 curl c o 訪問授權頁面 curl u username password url curl u username url curl z 21 d...
linux 簡單強大的命令
mkdir aa mv bb cd pwd root bb ls lsbb pwd root aa cd root bb cd pwd root aa ld bash ld 未找到命令 d s ls du s home sort n tail 檢視最大的10個目錄 file 建立乙個空檔案 ps a...