curl --connect-timeout 判斷國內外網路windows 批處理

來源:互聯網
上載者:User

標籤:

1.下載編譯curl

curl :http://curl.haxx.se/download.html ,下載後解壓到一個目錄,使用vs開發人員工具裡的 “Visual Studio 命令提示(2010)” 開啟命令列,

切換到源碼目錄 F:\curl-7.46.0\winbuild\,使用命令 nmake/f Makefile.vc mode=static 編譯一下,在 F:\curl-7.46.0\builds\libcurl-vc-x86-release-static-ipv6-sspi-winssl\bin 目錄下產生curl.exe 檔。

開啟命令列切換到curl.exe目錄,查看版本 curl -V

curl 7.46.0 (i386-pc-win32) libcurl/7.46.0 WinSSL WinIDN
Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtsp
smb smbs smtp smtps telnet tftp
Features: AsynchDNS IDN IPv6 Largefile SSPI Kerberos SPNEGO NTLM SSL

 如果在使用curl時出現 curl: (1) Protocol https not supported or disabled in libcurl錯誤,首先檢查一下用的curl.exe是否支援https協議.

2.知乎上有個根據curl --connect-timeout https://google.com 傳回值判斷是否是國內網路的程式碼片段

連結地址:https://www.zhihu.com/question/30262900

# Guess your location, you know it.

location=‘oversea‘

curl --connect-timeout 1 https://google.com 2>&1 >/dev/null

ret=$? if [ $ret -ne 0 ]; then

  location=‘cn‘

else

.......

這裡翻譯一個window下批處理版本

@echo offset location=‘oversea‘echo ‘當前位置:%location%‘echo ‘訪問http://www.baidu.com‘rem -x 設定代理rem --connect-timeout  1 連線逾時1秒,命令正常執行結果為1指stdout標準輸出,rem 就是控制台輸出;2指stderr錯誤輸出,這裡 2>$1表示重新導向到1,rem 然後再重新導向到null,linux下是/dev/null,windows下是nul。 curl -x "http://192.168.0.6:8080" --connect-timeout 1 "http://www.baidu.com" 2>$1>nulrem errorlevel是個系統變數指上一條語句的執行結果,成功時等於0echo ‘結果%errorlevel%‘echo ‘訪問https://google.com‘curl -x "http://192.168.0.6:8080" --connect-timeout 1 "https://google.com" 2>$1>nulrem 這裡是56,完整資訊是 curl: (56) Proxy CONNECT aborted due to timeoutecho ‘結果%errorlevel%‘IF not  errorlevel 0 then(set  location=‘CN‘)   echo ‘當前位置:%location%‘    

 

curl --connect-timeout 判斷國內外網路windows 批處理

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.