Linux捲曲命令的示例使用

在本指南中,您將看到如何使用curl命令下載文件和網頁。 如果你想知道捲曲是什麼以及什麼時候應該使用它,請閱讀這個頁面

curl命令可用於使用多種不同格式傳輸文件,包括http,https,ftp甚至smb。

本指南將向您展示如何使用該命令,並向您介紹許多按鍵開關和功能。

基本捲曲命令用法

curl命令可用於從互聯網上下載文件,但在其基本形式中,您可以將網頁內容直接下載到終端窗口。

例如,在終端窗口中輸入以下命令:

curl http://linux.about.com/cs/linux101/g/curl.htm

輸出將在終端窗口中向上滾動,並會顯示鏈接網頁的代碼。

顯然,頁面滾動速度太快而無法閱讀,所以如果您希望減慢速度,您應該使用less命令more命令

curl http://linux.about.com/cs/linux101/g/curl.htm | 更多

輸出捲曲到文件的內容

基本curl命令用法的問題在於文本滾動速度非常快,如果您正在下載文件(如ISO映像),則不希望這會轉到標準輸出。

要將內容保存到文件中,您只需指定minus o(-o)開關,如下所示:

curl -o

因此,要下載鏈接到基本命令用法部分的頁面,您只需輸入以下命令:

curl -o curl.htm http://linux.about.com/cs/linux101/g/curl.htm

文件下載後,您可以在編輯器或其文件類型確定的默認程序中打開它。

您可以通過使用負O開關(-O)進一步簡化,如下所示:

curl -O http://linux.about.com/cs/linux101/g/curl.htm

這將使用URL的文件名部分,並將其作為URL保存到的文件名。 在上面的例子中,該文件將被稱為curl.htm。

在背景中運行捲曲命令

默認情況下,curl命令會顯示一個進度條,告訴您剩餘時間以及傳輸了多少數據。

如果你只是想讓命令運行,以便你可以繼續其他事情,那麼你需要做的第一件事是以靜默方式運行它,然後你需要將它作為後台命令運行。

要以靜默方式運行命令,請使用以下命令:

curl -s -O

要讓命令在後台運行,您需要使用&符號(&),如下所示:

curl -s -o

使用捲曲下載多個URL

您可以使用單個curl命令從多個URL下載。

以最簡單的形式,您可以下載多個URL,如下所示:

curl -O http://www.mysite.com/page1.html -O http://www.mysite.com/page2.html

想像一下,儘管你有一個包含100個圖像的文件夾,所有這些文件都被稱為image1.jpg,image2.jpg,image3.jpg等等。你不需要輸入所有這些URL,也不需要。

您可以使用方括號來提供範圍。 例如,要獲取文件1到100,您可以指定以下內容:

curl -O http://www.mysite.com/images/image[1-100].jpg

您也可以使用大括號來指定具有相似格式的多個網站。

例如,想像一下你想下載www.google.com和www.bing.com。 您可以簡單地使用以下命令:

curl -O http:// www。{google,bing} .com

顯示進度

默認情況下,curl命令在下載URL時返回以下信息:

如果你想要一個簡單的進度條,只需指定減號哈希( - #)開關,如下所示:

curl - #-O

處理重定向

想像一下,你已經指定了一個URL作為curl命令的一部分,並認為你有正確的地址來下載一個大文件,以便稍後再回來發現你所擁有的只是一個網頁,指出“該頁面已被重定向到www.blah。 COM“。 這將是討厭的不是。

curl命令很聰明,因為它可以遵循重定向。 你所要做的就是使用負L開關(-L),如下所示:

curl -OL

降低下載速度

如果你正在下載一個大文件,並且你的互聯網連接不好,那麼如果他們想要在互聯網上做東西,你也可能會惹惱家人。

幸運的是,您可以使用curl命令來降低下載速度,這樣雖然下載文件需要更長的時間,但您可以讓每個人都快樂。

curl -O - 極限速率1m

速率可以指定為千字節(k或K),兆字節(m或m)或千兆字節(g或G)。

從FTP服務器下載文件

curl命令不僅可以處理HTTP文件傳輸。 它可以處理FTP,GOPHER,SMB,HTTPS和許多其他格式。

要從FTP服務器下載文件,請使用以下命令:

curl -u用戶:密碼-o

如果您指定文件的名稱作為URL的一部分,那麼它將下載該文件,但如果指定文件夾的名稱,它將返回文件夾列表。

您還可以使用curl通過使用以下命令將文件上載到FTP服務器:

curl -u用戶:密碼-T

文件名和可以使用與下載多個HTTP文件相同的模式匹配。

將表單數據傳遞給表單

您可以使用捲曲來填寫在線表單並提交數據,就像您在線填寫數據一樣。 許多受歡迎的服務(例如Google)阻止了這種用法。

想像一下,有一個名稱和電子郵件地址的表單。 您可以按照以下方式提交此信息:

curl -d name = john email=john@mail.com www.mysite.com/formpage.php

有多種方式傳輸表單信息。 上述命令使用基本文本,但如果您想使用允許圖像傳輸的多編碼,則需要使用負F開關(-F)。

概要

curl命令有許多不同的身份驗證方法,您可以使用它來訪問FTP站點,發送電子郵件,連接到SAMBA地址,上傳和下載文件以及許多其他內容。

要獲得更多關於捲曲的信息,請閱讀手冊頁。