Command-Line-Interface

curl 命令只返回一個 HTTP 狀態碼

  • July 2, 2018

我只想從CURL命令響應中獲取 statusCode。

當我使用這個命令時:

curl -I  http://uploadserver.ln/1.mp4

我只想得到200而不是這個長的結果:

HTTP/1.1 200 OK
Server: nginx/1.14.0 (Ubuntu)
Date: Sun, 01 Jul 2018 12:47:02 GMT
Content-Type: video/mp4
Content-Length: 1055736
Last-Modified: Sat, 30 Jun 2018 07:58:25 GMT
Connection: keep-alive
ETag: "5b373821-101bf8"
Accept-Ranges: bytes

誰能幫我?

您可以使用該-w參數來定義格式curl輸出。要獲取狀態程式碼而不是其他任何內容,請使用以下內容:

$ curl -s -o /dev/null -w "%{http_code}" http://xxx.xxx.xxx

輸出應如下所示:

$ curl -s -o /dev/null -w "%{http_code}" https://www.google.com
200

請注意,-o定義頁面的輸出將被發送到 /dev/null - 這樣它只會列印出狀態程式碼而不是頁面內容。

引用自:https://serverfault.com/questions/919036