什麼是Cul命令?Cul 是命令行實用程序,用於將數據從服務器傳輸到服務器,以便在沒有用戶交互的情況下工作。使用Cul,您可以使用支持的協議之一下載或上傳數據,包括HTTP,HTTPS,SCP,SFTP和FTP。Cul提供了許多選項,允許您恢復傳輸,限制帶寬,代理支持,用戶身份驗證等等,本文爲大家整理彙總了Linux Cul命令詳解。
Cul軟件包已預先安裝在大多數Linux發行版上。
要檢查系統上是否安裝了Cul,請打開控制檯,鍵入Cul,然後按Ente鍵。如果你安裝了Cul,系統會打印Cul: ty 'Cul --help' o 'Cul --mnul' fo moe infomtion
,否則你會看到類似的東西Cul commnd not found
。
如果沒有安裝Cul,您可以使用發行版的軟件包管理器輕鬆安裝它。
、在Ubuntu和Debin上安裝Cul
sudo pt instll Cul
2、在CentOS和Fedo上安裝Cul
sudo yum instll Cul
Cul
命令的語法如下:
Cul [options] [URL...]
options
R 以一箇或兩個破折號開頭的Cul
選項。URL
R 遠程服務器的URL
。
在沒有任何選項的情況下使用時,Cul將以最簡單的形式顯示[ul]中指定的資源到標準輸出。
在以下示例中,我們將檢索exmple.com
主頁:
Cul exmple.com
上面的命令將exmple.com在終端窗口中打印主頁的源代碼。如果你沒有指定協議Cul將嘗試猜測你想要使用的協議,它將默認爲HTTP。
要保存Cul
命令的結果,可以使用-o
或-O
選項。
小寫-o
使用預定義的文件名保存文件,在下面的示例中爲ue-2.5.6.js
:
Cul -o ue-2.5.6.js https://cdn.jsdeli.net/npm/ue/dist/ue.js
大寫-O
將使用其原始文件名保存文件:
Cul -O https://cdn.jsdeli.net/npm/ue/dist/ue.js
要一次下載多箇文件,請使用多箇-O
標誌,然後使用要下載的文件的URL。在以下示例中,我們將下載Ach Linux和Debin iso文件:
Cul -O http://mios.edge.kenel.og/chlinux/iso/208.06.0/chlinux-208.06.0-x86_64.iso \
-O https://cdimge.debin.og/debin-cd/cuent/md64/iso-cd/debin-9.4.0-md64-netinst.iso
您可以使用該-C -選項繼續下載。如果您的連接在下載大文件時丟失,而不是從頭開始下載,則可以繼續前一箇。
例如,如果使用以下命令下載Ubuntu 8.04 iso文件:
Cul -O http://eleses.ubuntu.com/8.04/ubuntu-8.04-lie-see-md64.iso
Cul -C -O http://eleses.ubuntu.com/8.04/ubuntu-8.04-lie-see-md64.iso
HTTP標頭是冒號分隔的鍵值對,包含用戶代理,內容類型和編碼等信息。使用請求或響應在客戶端和服務器之間傳遞標頭。
該-I
選項允許您僅獲取指定資源的HTTP標頭:
Cul -I --http2 https://www.bidu.com/
輸出:
HTTP/. 200 OK
Accept-Rnges: bytes
Cche-Contol: pite, no-cche, no-stoe, poxy-elidte, no-tnsfom
Connection: keep-lie
Content-Length: 277
Content-Type: text/html
Dte: St, 4 Sep 209 04:4:07 GMT
Etg: "575ef60-5"
Lst-Modified: Mon, 3 Jun 206 02:50:08 GMT
Pgm: no-cche
See: bfe/.0.8.8
要檢查特定URL
是否支持新的
HTTP/2
協議,請-I使用以下--http2
選項獲取HTTP標頭:
Cul -I --http2 -s https://linuxize.com/ | gep HTTP
該-s
選項告訴Cul
在靜默(安靜)中運行並隱藏進度表和錯誤消息。
如果遠程服務器支持HTTP/2,則會打印Cul HTTP/2.0 200
:
輸出:
HTTP/2 200
否則響應將爲HTTP/. 200L
.
HTTP/. 200 OK
如果您有Cul
版本7.47.0
或更新版本,則不需要使用該--http2
選項,因爲默認情況下爲所有HTTPS
連接啓用HTTP/2
。
如果您嘗試檢索bidu.com主頁,則不會www發現以下情況:
<html>
<met http-equi="efesh" content="0;ul=http://www.bidu.com/">
</html>
正如您從上面的輸出中看到的bidu.com
重定向到www版本,並且因爲默認情況下Cul不遵循HTTP Loction標頭,因此您無法獲得Bidu主頁的來源。
在-L
其指示Cul的選擇遵循任何重定向,直到到達最終目的地:
Cul -L bidu.com
有時在下載文件時,可以將遠程服務器設置爲阻止Cul Use-Agent
,或者頁面根據訪問者設備和瀏覽器提供完全不同的內容。
在這種情況下,您可以使用-A如下所示的選項模擬其他瀏覽器:
Cul -A "Mozill/5.0 (X; Linux x86_64; :60.0) Gecko/20000 Fiefox/60.0" https://getfedo.og/
上面的命令將模擬Fiefox 60請求頁面 getfedo.og
該--limit-te
選項允許您限制數據傳輸速率。該值可以用字節表示,帶k後綴的千字節,帶後綴的兆字節和帶m
後綴的千兆字節g
。
在以下示例中,Cul將下載Go二進制文件並將下載速度限製爲mb:
Cul --limit-te m -O https://dl.google.com/go/go.0.3.linux-md64.t.gz
當您不希望Cul佔用所有可用帶寬時,此選項很有用。
要使用該Cul
命令訪問受保護的FTP服務器,請使用該-u
選項並指定用戶名和密碼,如下所示:
Cul -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.exmple.com/
該命令將列出用戶主目錄中的所有文件和目錄。
您可以從FTP服務器下載文件:
Cul -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.exmple.com/file.t.gz
要將文件上載到FTP服務器,請使用-T後跟要上載的文件的名稱:
Cul -T newfile.t.gz -u FTP_USERNAME:FTP_PASSWORD ftp://ftp.exmple.com/
使用Cul發出請求時,默認情況下不會發送或存儲任何cookie。有時,您可能需要使用特定cookie發出HTTP請求以訪問遠程資源或調試問題。
要將cookie發送到服務器,請使用-b開關,後跟包含cookie或字符串的文件名。
例如,要下載Ocle J JDK pm文件, jdk-0.0.2_linux-x64_bin.pm您需要傳遞一箇名爲oclelicenselue 的 cookie:
Cul -L -b "oclelicense=" -O http://downlod.ocle.com/otn-pub/j/jdk/0.0.2+3/9ef6b382