首頁 運維 linux運維 linux curl指令參數有哪些及怎麼使用

linux curl指令參數有哪些及怎麼使用

May 12, 2023 pm 06:46 PM
linux curl

linux curl是一個利用url規則在命令列下工作的檔案傳輸工具。它支援檔案的上傳和下載,所以是綜合傳輸工具,但按傳統,習慣稱url為下載工具。

  一,curl指令參數

  -a/--append 上傳檔案時,附加到目標檔案

  -a/--user-agent   設定使用者代理程式傳送給伺服器

  - anyauth   可以使用「任何」身份驗證方法

  -b/--cookie cookie字串或檔案讀取位置

  - basic 使用http基本驗證

  -b/--use-ascii 使用ascii /文字傳送

  -c/--cookie-jar 作業結束後把cookie寫入到這個文件中

  -c/--continue-at   斷點續轉

  -d/--data    http post方式傳送資料

  --data-ascii   以ascii的方式 post資料

  --data-binary 以二進位的方式post資料

  --data-binary 以二進位的方式post資料

資料

。 --negotiate     使用http驗證

  --digest        使用數位身分驗證

  --disable-eprt  禁止使用數位身份或

  --disable-eprt  禁止使用數位身份或#C

##  --disable-eprtm-epvablev) 禁止使用禁止使用#disfablev.

  -d/--dump-header 把header資訊寫入到該檔案

  --egd-file 為隨機資料(ssl)設定egd socket路徑

  --tcp-nodelay   使用tcp_nodelay選項

  -e/--referer 來源網址

  -e/--cert

  --cert-type 憑證檔案類型(der/pem/eng) (ssl)

#  --key

  --key-type 私鑰檔案類型(der/pem/eng) (ssl)

  --pass  私鑰密碼(ssl)

  --engine   加密引擎使用(ssl). "--engine list" for list

  --cacert ca憑證( ssl)

  --capath ca目錄(made using c_rehash) to verify peer against (ssl)

  --ciphers   s

  --ciphers   s

##」密碼密碼代碼--compressed    要求回傳是壓縮的情勢(using deflate or gzip)

  --connect-timeout 設定最大請求時間

  --create-dirs  層次結構

  --crlf          上傳是把lf轉變成crlf

  -f/--fail      如果遠端目錄不存在,建立遠端目錄

  --ftp-method [multicwd/nocwd/singlecwd] 控制cwd的使用

  --ftp-pasv      使用pasv/epsv 取代連接埠

#  --ftp-skip-pasv-ip 使用pasv的時候,忽略該ip位址

  --ftp-ssl       嘗試使用ssl/tls 來進行ftp資料

#  -#  -# -ftp-ssl-reqd  要求用ssl/tls 來進行ftp資料傳輸

  -f/--form 模擬http表單提交資料

  -form-string < ;name=string> 模擬http表單提交資料

  -g/--globoff 停用網址序列和範圍使用{}和[]

  -g/--get 以get的方式來傳送資料

  -h/--help 說明

  -h/--header 自訂頭資訊傳遞給伺服器

  --ignore-content- length  忽略的http頭資訊的長度

  -i/--include 輸出時包含protocol頭資訊

  -i/--head  只顯示文件資訊

  從檔案中讀取-j/--junk-session-cookies忽略會話cookie

  - 介面指定網路介面/位址使用

  - krb4 <等級>啟用與指定的安全等級krb4

  -j/--junk-session-cookies 讀取檔案進忽略session cookie

  --interface 使用指定網路介面/位址

  --krb4   使用指定安全等級的krb4

  -k/--insecure 允許不使用憑證到ssl網站

  -k/--config  指定的設定檔讀取

  -l/--list-only 列出ftp目錄下的檔案名稱

  --limit-rate 設定傳輸速度

  --#  -- local-port 強制使用本機埠號

  -m/--max-time 設定最大傳輸時間

  --max-redirs 設定最大已讀取的目錄數######  --max-filesize 設定最大下載的檔案總量######  -m/--manual  顯示全手動###

  -n/--netrc 從netrc檔案讀取使用者名稱與密碼

  --netrc-optional 使用.netrc 或url來覆寫-n

  --ntlm   驗證

  -n/--no-buffer 停用緩衝輸出

  -o/--output 把輸出寫到該檔案

#  -o/--remote -name 把輸出寫到該文件中,保留遠端文件的文件名

  -p/--proxytunnel   使用http代理

  --proxy-anyauth 選擇任一代理驗證方法

  --proxy-basic   在代理上使用基本身份驗證

  --proxy-digest  在代理上使用數位身分驗證

  --proxy-ntlm    在代理程式上使用ntlm驗證

  -p/--ftp-port

使用連接埠位址,而不是使用pasv

  -q/--quote 檔案傳輸前,發送命令到伺服器

  -r/--range 檢索來自http/1.1或ftp伺服器位元組範圍

  --range-file 讀取(ssl)的隨機檔案

  -r/--remote-time   在本機產生檔案時,保留遠端檔案時間

  --retry    傳送問題時,重試的次數

#  --retry-delay   傳輸出現問題時,設定重試間隔時間

  --retry-max-time 傳輸出現問題時,設定最大重試時間

  -s/--silent靜音模式。不輸出任何東西

  -s/--show-error   顯示錯誤

  --socks4 用socks4代理程式給定主機和連接埠

  --socks5 用socks5代理程式給定主機和連接埠

  --stderr
-t/--telnet-option telnet選項設定

  --trace   對指定檔案進行debug

  --trace-ascii like --追蹤但沒有hex輸出

  --trace-time    追蹤/詳細輸出時,新增時間戳記

  -t/--upload-file 上傳檔案

  --url sp url to work with

  -u/--user 設定伺服器的使用者與密碼

  -u/--proxy-user 設定代理使用者名稱與密碼

  -v/--verbose

  -v/--version 顯示版本資訊

#  -w/--write-out [format]什麼輸出完成後

  -x/--proxy 在給定的連接埠上使用http代理

  -x/--request < ;command>指定什麼指令

  -y/--speed-time 放棄限速所需的時間。預設為30

  -y/--speed-limit 停止傳輸速度的限制,速度時間'秒

  -z/--time-cond  傳送時間設定

# -0/--http1.0  使用http 1.0

  -1/--tlsv1  使用tlsv1(ssl)

  -2/--sslv2 使用sslv2的(ssl)

#  -2/--sslv2 使用sslv2的(ssl)

  -3/--sslv3         使用的sslv3(ssl)

  --3p-quote      like - 〠 for 3p-quote      like - 〠 for 3p-quote      like - 〠 for 3p-quote      like - 〠 3p-quote      like - 〠 3p- party trans_rd-- party#.進行第三方傳送

  --3p-user       使用使用者名稱及密碼,進行第三方傳送

  -4/--ipv4   使用ip4

 -6/--ipv4   使用ip4

 -6/--ipv6/--ipv6/--ipv6使用ip6

  -#/--progress-bar 以進度條顯示目前的傳送狀態

  -a/--append 上傳檔案時,附加到目標檔案

# -a/--user-agent   設定使用者代理程式傳送至伺服器

  - anyauth   可以使用「任何」身份驗證方法

#  -b/--cookie cookie字串或檔案讀取位置

  - basic 使用http基本驗證

  -b/--use-ascii 使用ascii /文字傳送

#  - c/--cookie-jar 作業結束後把cookie寫入這個檔案

  -c/--continue-at   斷點續轉

# -d/--data    http post方式傳送資料

  --data-ascii   以ascii的方式post資料

  --data-binary

  --negotiate     使用http驗證

  --digest        使用數位驗證 

  --disable-epsv  禁止使用epsv

  -d/--dump-header 把header信息寫入到該文件中

  --egd- file 為隨機資料(ssl)設定egd socket路徑

  --tcp-nodelay   使用tcp_nodelay選項

  -e/--referer 來源網址

  -e/--cert 客戶端證書檔案與密碼(ssl)

  --cert-type 憑證檔案類型(der/pem/eng) (ssl)

  --key      私鑰檔案名稱(ssl)

  --key-type 私鑰檔案類型(der/pem/eng) (ssl)

 鑰 --pass    私人密碼(ssl )

  --engine   加密引擎使用(ssl). "--engine list" for list

  --cacert ca憑證(ssl)

  --capath ca目錄(made using c_rehash) to verify peer against (ssl)

  --ciphers   ssl

#  --ciphers   ssl

#  --ciphers   ssl

1>com#com>como>是壓縮的形勢(using deflate or gzip)

  --connect-timeout 設置最大請求時間

  --create-dirs   建立本地目錄的目錄層次結構

  --crlf          上傳是將lf轉變為crlf

  -f/--fail         〵 如果遠端存在目錄不顯示http"##date ,建立遠端目錄

  --ftp-method [multicwd/nocwd/singlecwd] 控制cwd的使用

  --ftp-pasv      使用 pasv/epsv 來取代 #-caaaa -ftp-skip-pasv-ip 使用pasv的時候,忽略該ip位址

  --ftp-ssl       嘗試用ssl/tls 來進行ftp資料傳輸

 --ftp-ssl-ftp-ssl-ftp-ssl-ftp-ssl-ftp-ssl-ftp-ssl- reqd  要求用ssl/tls 來進行ftp資料傳輸

  -f/--form 模擬http表單提交資料

#  -form-string 模擬http表單提交資料

  -g/--globoff 停用網址序列和範圍使用{}和[]

  -g/--get 以get的方式來傳送資料

  -h/--help 幫助

  -h/--header 自訂頭資訊傳遞給伺服器

  --ignore-content-length  忽略的http頭資訊的長度

  -i/--include 輸出時包含protocol頭資訊

  -i/--head  只顯示文件資訊

  從檔案讀取-j /--junk-session-cookies忽略會話cookie

  - 介面指定網路介面/位址使用

  - krb4 <等級>啟用與指定的安全等級krb4

  -j/--junk-session-cookies 讀取檔案進忽略session cookie

  --interface 使用指定網路介面/位址

#  --krb4   使用指定安全等級的krb4

#  -k/--insecure 允許不使用憑證到ssl網站

  -k/--config  允許不使用憑證到ssl網站

  -k/--config  指定的設定檔讀取

#  -l/--list-only 列出ftp目錄下的檔案名稱

#  --limit-rate 設定傳輸速度

  --local-port

  -m/--max-time 設定最大傳輸時間

  --max-redirs 設定最大讀取的目錄數

  --max-filesize 設定最大下載的檔案總量
-m/--manual  顯示全手動

  -n/--netrc 從netrc檔案中讀取用戶名和密碼

  --netrc-optional 使用.netrc 或者url來覆蓋-n

  --ntlm          使用http ntlm 身份驗證

  -n/-- no-buffer 禁用緩衝輸出

  -o/--output 把輸出寫到該文件中

  -o/--remote-name 把輸出寫到該文件中,保留遠端文件的檔案名稱

  -p/--proxytunnel   使用http代理

  --proxy-anyauth 選擇任一代理驗證方法

  --proxy-basic   在代理上使用基本驗證

  --proxy-digest  在代理程式上使用數位身分驗證

  --proxy-ntlm    在代理程式上使用ntlm驗證

  -p/-- -ftp-port

使用連接埠位址,而不是使用pasv

  -q/--quote 檔案傳輸前,發送命令到伺服器

  -r/- -range 檢索來自http/1.1或ftp伺服器位元組範圍

  --range-file 讀取(ssl)的隨機檔案

  -r/--remote-time在本地產生文件時,保留遠端文件時間

  --retry    傳輸出現問題時,重試的次數

  --retry-delay <  傳輸出現問題;時,設定重試間隔時間

  --retry-max-time 傳輸出現問題時,設定最大重試時間

  -s/--silent靜音模式。不輸出任何東西

  -s/--show-error   顯示錯誤

  --socks4 用socks4代理程式給定主機和連接埠

  --socks5 用socks5代理程式給定主機和連接埠

  --stderr

  -t/--telnet-option < ;opt=val> telnet選項設定

  --trace   對指定檔案進行debug

  --trace-ascii like --

#  --trace-ascii like --追蹤但沒有hex輸出

  --trace-time    追蹤/詳細輸出時,新增時間戳記

  -t/--upload-file 上傳檔案

  --url < url>     spet url to work with

  -u/--user 設定伺服器的使用者與密碼

  -u/--proxy-user < user[:password]>設定代理使用者名稱與密碼

  -v/--verbose

  -v/--version 顯示版本資訊

  -w/-- write-out [format]什麼輸出完成後

  -x/--proxy 在給定的連接埠上使用http代理

  -x/- -request 指定什麼指令

  -y/--speed-time 放棄限速所需的時間。預設為30

  -y/--speed-limit 停止傳輸速度的限制,速度時間'秒

  -z/--time-cond  傳送時間設定

# -0/--http1.0  使用http 1.0

  -1/--tlsv1  使用tlsv1(ssl)

  -2/--sslv2 使用sslv2的(ssl)

#  -2/--sslv2 使用sslv2的(ssl)

  -3/--sslv3         使用的sslv3(ssl)

  --3p-quote      like - 〠 for 3p-quote      like - 〠 for 3p-quote      like - 〠 for 3p-quote      like - 〠 3p-quote      like - 〠 3p- party trans_rd-- party#.進行第三方傳送

  --3p-user       使用使用者名稱及密碼,進行第三方傳送

  -4/--ipv4   使用ip4

 -6/--ipv4   使用ip4

 -6/--ipv6/--ipv6/--ipv6使用ip6

  -#/--progress-bar 用進度條顯示目前的傳送狀態

  二,常用curl實例

#  1,抓取頁面內容到一個文件中

  [root@krlcgcms01 mytest]# curl -o home.html 

  [root@krlcgcms01 mytest]# curl -o home.html 

##112]o 2,用. (大寫的),後面的url要具體到某個文件,不然抓不下來。我們也可以用正則來抓取東西

  [root@krlcgcms01 mytest]# curl -o

  [root@krlcgcms01 mytest]# curl -o

  3,模擬模擬 3,模擬模擬 3,模擬模擬表單訊息,模擬登錄,儲存cookie訊息

  [root@krlcgcms01 mytest]# curl -c ./cookie_c.txt -f log=aaaa -f pwd=******

#  [root@krlcgcms01 mytest]# curl -c ./cookie_c.txt -f log=aaaa -f pwd=******

  4,模擬表單訊息,模擬登錄,儲存頭資訊

  [root@krlcgcms01 mytest]# curl -d ./cookie_d.txt -f log=aaaa -f pwd=******

  [root@krlcgcms01 mytest]# curl -

  [root@krlcgcms01 mytest]# curl -

  [root@krlcgcms01 mytest]# curl -

[ d ./cookie_d.txt -f log=aaaa -f pwd=******

  -c(小寫)產生的cookie和-d裡面的cookie是不一樣的。

  5,使用cookie檔

  [root@krlcgcms01 mytest]# curl -b ./cookie_c.txt 

  [root@krlcgcms01 mytxt 

  [root@krlcgcms01 mytxt 

  [root@krlcgcms01 mytxt ]# . cookie_c.txt 

  6,斷點續傳,-c(大寫的)

  [root@krlcgcms01 mytest]# curl -c -o

  7,傳送資料,最好用登入頁面測試,因為你傳值過去後,curl回抓數據,你可以看到你傳值有沒有成功

  [root@krlcgcms01 mytest]# curl -d log=aaaa 

  [root@krlcgcms01 mytest]# curl -d log=aaaa 

  8,顯示抓取錯誤,下面這個例子,很清楚的表明了。

  [root@krlcgcms01 mytest]# curl -f

  curl: (22) the requested url returned error: 404

  [root@lctest
  404,not found

###  。 。 。 。 。 。 。 。 。 。 。 。 ######  [root@krlcgcms01 mytest]# curl -f######  curl: (22) the requested url returned error: 404######  [root@lctest ###  404,not found######  。 。 。 。 。 。 。 。 。 。 。 。 ######  9,偽造來源位址,有的網站會判斷,請求來源位址。 ######  [root@krlcgcms01 mytest]# curl -e######  [root@krlcgcms01 mytest]# curl -e######  10,當我們常常用curl去搞東西的時候,去搞人人家會把你的ip給屏蔽掉的,這個時候,我們可以用代理######  [root@krlcgcms01 mytest]# curl -x 24.10.28.84:32779 -o home.html###### [root@krlcgcms01 mytest]# curl -x 24.10.28.84:32779 -o home.html###11,比較大的東西,我們可以分段下載###

【[root@krlcgcms01 mytest]#curl -r 0-100 -o img.part1 -

##內容/uploads/2010/09/compare_varnish.jpg

#【%總計% 收到% % xferd 平均速度時間時間當前時間

#dload 上傳總​​花費左速度

 100   101  100   101   - --:--:-- - -:--:--     0

【root@krlcgcms01 mytest】#curl -r 100-200 -o img.part2 -

#【 content/uploads/2010/09/compare_varnish.jpg

% 總計% 收到% xferd 平均速度時間時間目前

dload 上傳總​​計花費剩餘速度

# 100   101  100 101    0     0     57     與 0   

內容/uploads/2010/09 /compare_varnish.jpg

%總計    %接收%xferd平均速度時間   時間    時間當前』# 

dload 

#100  104k  100  104k    0     0  52793      0  0: 00:02 0:00:【0221:-- | xargs du -sh

4.0k 一.part1

112k 三.part3

四.0k 二.part2

#[root@krlcgcms01 mytest]# curl -r 0-100 -o img.part1 -

Content/uploads/2010/09/compare_varnish.jpg

#dload上傳總花費左速

dload上傳總花費左速

#100   101 100   101    0     0    105      0 --:--:-- --:--:-- --:--:--     0

【[root@krlcgcms01 mytest]#curl -r 100- 200 -o img.part2 -

【content/uploads/2010/09/compare_varnish.jpg

】 % 總計% 收到 % xferd 平均速度時間時間目前時間

#dload 上傳總​​花費左速

【content/uploads/2010/09/compare_varnish.jpg

#】%總計    % 接收百分比% xferd 接收平均速率  時間時間     當前時間

德載入上傳總速度

####【root@krlcgcms01 mytest】# ls |grep 部分 | xargs du -sh

四.0k 一.part1

一112k 三.part3

四.0k 二.part2

#用的時候,把他們貓一下就ok了,cat img.part* >img.jpg

##13,顯示下載圖紙條

##[root@krlcgcms01 mytest]#curl -# -o

######## ######################################### ############ ####### 100.0%#######  % total    % received % xferd  average speed   time    time     time  current

    1934  101  1934    0     0   3184      0 --:--:-- - -:--:-- --:--:--  7136

  或用下面的方式

  [zhangy@blackghost ~]$ curl -o ftp://用戶名:密碼@ip:port/demo/curtain/bbstudy_files/style.css

  [zhangy@blackghost ~]$ curl -o ftp://使用者名稱:密碼@ip:port/demo/curtain/bbstudy_files/ style.css

  15,透過ftp上傳

  [zhangy@blackghost ~]$ curl -t test.sql ftp://使用者名稱:密碼@ip:port/demo/curtain/ bbstudy_files/

  [zhangy@blackghost ~]$ curl -t test.sql ftp://用戶名:密碼@ip:port/demo/curtain/bbstudy_files/

以上是linux curl指令參數有哪些及怎麼使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

vscode需要什麼電腦配置 vscode需要什麼電腦配置 Apr 15, 2025 pm 09:48 PM

VS Code 系統要求:操作系統:Windows 10 及以上、macOS 10.12 及以上、Linux 發行版處理器:最低 1.6 GHz,推薦 2.0 GHz 及以上內存:最低 512 MB,推薦 4 GB 及以上存儲空間:最低 250 MB,推薦 1 GB 及以上其他要求:穩定網絡連接,Xorg/Wayland(Linux)

Linux體系結構:揭示5個基本組件 Linux體系結構:揭示5個基本組件 Apr 20, 2025 am 12:04 AM

Linux系統的五個基本組件是:1.內核,2.系統庫,3.系統實用程序,4.圖形用戶界面,5.應用程序。內核管理硬件資源,系統庫提供預編譯函數,系統實用程序用於系統管理,GUI提供可視化交互,應用程序利用這些組件實現功能。

notepad怎麼運行java代碼 notepad怎麼運行java代碼 Apr 16, 2025 pm 07:39 PM

雖然 Notepad 無法直接運行 Java 代碼,但可以通過借助其他工具實現:使用命令行編譯器 (javac) 編譯代碼,生成字節碼文件 (filename.class)。使用 Java 解釋器 (java) 解釋字節碼,執行代碼並輸出結果。

vscode 無法安裝擴展 vscode 無法安裝擴展 Apr 15, 2025 pm 07:18 PM

VS Code擴展安裝失敗的原因可能包括:網絡不穩定、權限不足、系統兼容性問題、VS Code版本過舊、殺毒軟件或防火牆干擾。通過檢查網絡連接、權限、日誌文件、更新VS Code、禁用安全軟件以及重啟VS Code或計算機,可以逐步排查和解決問題。

vscode 可以用於 mac 嗎 vscode 可以用於 mac 嗎 Apr 15, 2025 pm 07:36 PM

VS Code 可以在 Mac 上使用。它具有強大的擴展功能、Git 集成、終端和調試器,同時還提供了豐富的設置選項。但是,對於特別大型項目或專業性較強的開發,VS Code 可能會有性能或功能限制。

git怎麼查看倉庫地址 git怎麼查看倉庫地址 Apr 17, 2025 pm 01:54 PM

要查看 Git 倉庫地址,請執行以下步驟:1. 打開命令行並導航到倉庫目錄;2. 運行 "git remote -v" 命令;3. 查看輸出中的倉庫名稱及其相應的地址。

vscode終端使用教程 vscode終端使用教程 Apr 15, 2025 pm 10:09 PM

vscode 內置終端是一個開發工具,允許在編輯器內運行命令和腳本,以簡化開發流程。如何使用 vscode 終端:通過快捷鍵 (Ctrl/Cmd ) 打開終端。輸入命令或運行腳本。使用熱鍵 (如 Ctrl L 清除終端)。更改工作目錄 (如 cd 命令)。高級功能包括調試模式、代碼片段自動補全和交互式命令歷史。

VSCode怎麼用 VSCode怎麼用 Apr 15, 2025 pm 11:21 PM

Visual Studio Code (VSCode) 是一款跨平台、開源且免費的代碼編輯器,由微軟開發。它以輕量、可擴展性和對眾多編程語言的支持而著稱。要安裝 VSCode,請訪問官方網站下載並運行安裝程序。使用 VSCode 時,可以創建新項目、編輯代碼、調試代碼、導航項目、擴展 VSCode 和管理設置。 VSCode 適用於 Windows、macOS 和 Linux,支持多種編程語言,並通過 Marketplace 提供各種擴展。它的優勢包括輕量、可擴展性、廣泛的語言支持、豐富的功能和版

See all articles