Lftp - Linux命令 - UNIX命令

名稱

lftp - 先進的文件傳輸程序

句法

lftp [ -d ] [ -e cmd ] [ -p 端口 ] [ -u 用戶 [ pass ]] [ 站點 ]
lftp -f script_file
lftp -c 命令
lftp - 版本
lftp - 幫助

描述

lftp是一個允許複雜的ftp和http連接到其他主機的程序。 如果指定了host ,則lftp將連接到該主機,否則必須使用open命令建立連接。

lftp可以處理六種文件訪問方法 - ftp,ftps, httphttps ,hftp,fish和file(只有在使用openssl庫編譯lftp時才可以使用https和ftps)。 您可以在`open URL'命令中指定要使用的方法,例如`open http://www.us.kernel.org/pub/linux'。 hftp是ftp-over-http-proxy協議。 如果ftp:proxy設置為`http:// proxy [:port]',則可以自動使用它而不是ftp。 Fish是一個通過ssh連接工作的協議。

lftp中的每個操作都是可靠的,即忽略任何非致命錯誤並重複操作。 所以如果下載中斷,它會自動重新啟動。 即使ftp服務器不支持REST命令, lftp也會嘗試從一開始就檢索文件,直到文件完全傳輸。

lftp具有類似shell的命令語法,允許您在後台(&)中並行啟動多個命令。 也可以在()中對命令進行分組並在背景中執行它們。 所有後台作業都在同一個進程中執行。 您可以使用^ Z(cz)將背景作業帶回背景,並使用命令“wait”(或“fg”作為“wait”的別名)返回。 要列出正在運行的作業,請使用命令`jobs'。 一些命令允許將其輸出(cat,ls,...)重定向到文件或通過管道重定向到外部命令。 命令可以根據前一個命令的終止狀態(&&,||)有條件地執行。

如果當某些作業尚未完成時退出lftp ,則lftp將在後台自動移至nohup模式。 當你有一個真正的調製解調器掛斷或關閉一個xterm時也會發生同樣的情況。

lftp具有可以下載或更新整個目錄樹的內置鏡像。 還有一個反向鏡像(鏡像-R),用於上載或更新服務器上的目錄樹。 鏡像還可以在兩個遠程服務器之間同步目錄,使用FXP(如果可用)。

命令`at'在當前上下文的指定時間啟動一個作業,命令`queue'排列用於當前服務器順序執行的命令等等。

啟動時, lftp執行/etc/lftp.conf ,然後執行〜/ .lftprc〜/ .lftp / rc 。 您可以在其中放置別名和“設置”命令。 有些人更喜歡看完整的協議調試,使用`debug'打開調試。 使用`debug 3'僅查看問候消息和錯誤消息。

lftp有許多可設置的變量。 您可以使用`set -a'查看所有變量及其值,或者使用`set -d'查看默認值列表。 變量名稱可以縮寫,前綴可以省略,除非其餘變得模糊。

如果lftp是使用ssl支持編譯的,那麼它包含由OpenSSL Project開發的用於OpenSSL Toolkit的軟件。 (http://www.openssl.org/)

命令

shell命令

啟動shell或shell命令

!LS

做一個本地主機的目錄列表。

別名 [ 名稱 [ ]]

定義或取消定義別名。 如果省略了 ,那麼別名是未定義的,否則它取值的 。 如果沒有給出參數,則列出當前別名。

alias dir ls -lF alias less zmore

不久

將用戶設置為匿名。 這是默認設置。

時間 [ - 命令 ]

等待給定時間並執行給定(可選)命令。

書籤 [ 子命令 ]

書籤命令控製書簽。

添加[]將當前位置或給定位置添加到書籤並綁定到給定名稱del刪除帶名稱的書籤編輯書籤文件上的開始編輯器導入導入外部書籤列表列表書籤(默認)

緩存 [ 子命令 ]

緩存命令控製本地內存緩存 。 以下子命令被識別:

stat打印緩存狀態(默認)on | off打開/關閉緩存flush flush cache size lim設置內存限制,-1表示無限期過期Nx將緩存過期時間設置為N秒( x = s)分鐘( x = m)小時x = h)或天( x = d)

文件

cat將遠程文件輸出到標準輸出。 (另請參閱更多zcatzmore

cd rdir

更改當前的遠程目錄。 前一個遠程目錄存儲為' - '。 你可以用`cd - '來改變目錄。 每個站點的上一個目錄也存儲在磁盤上,所以你可以做`open site; cd - '即使在lftp重新啟動後也是如此。

chmod 模式文件

更改遠程文件的權限掩碼。 模式必須是八進制數。

關閉 [ -a ]

關閉空閒連接。 默認情況下只有當前服務器,請使用-a關閉所有空閒連接。

命令 cmd args ...

執行給定的命令忽略別名。

[ -o 文件 ] 級別 |

切換調試級別或關閉它。 使用-o將調試輸出重定向到文件。

echo [ -n ] 字符串

猜猜它是乾什麼的。

退出代碼
退出bg

如果作業處於活動狀態,則退出將從lftp退出或移動到後台。 如果沒有作業處於活動狀態,則代碼將作為lftp的終止狀態傳遞給操作系統。 如果省略代碼,則使用最後命令的退出代碼。

當cmd:move-background為false時,`exit bg'強制移動到背景。

FG

別名為“等待”。

找到 [ 目錄 ]

以遞歸方式列出目錄中的文件(默認為當前目錄)。 這可以幫助缺乏ls -R支持的服務器。 您可以重定向該命令的輸出。

ftpcopy

已過時。 請改用以下其中一項:

get ftp:// ... -o ftp:// ... get -O ftp:// ... file1 file2 ... put ftp:// ... mput ftp://.../* mget -O ftp:// ... ftp://.../*

或其他組合來獲得FXP傳輸(直接在兩個ftp服務器之間)。 如果無法啟動FXP傳輸或者ftp:use-fxp為false,則lftp將回退到普通副本(通過客戶端)。

get [ -E ] [ -a ] [ -c ] [ -O base ] rfile [ -o lfile ] ...

檢索遠程文件rfile並將其存儲為本地文件lfile 。 如果省略-o,則文件將存儲到名為rfile的基本名稱的本地文件中。 您可以通過指定rfile [和-o lfile ]的多個實例來獲取多個文件。 不擴展通配符,為此使用mget

-c繼續,reget -E成功傳輸後刪除遠程文件-a使用ascii模式(二進制是默認模式)-O指定文件應放置在的基本目錄或URL

例子:

獲取README獲取README -o debian.README獲取自述文件README.mirrors獲取自述文件-o debian.README README.mirrors -o debian.mirrors獲取自述文件-o ftp://some.host.org/debian.README獲取自述文件-o ftp://some.host.org/debian-dir/(結尾斜杠很重要)

glob [ -d ] [ -a ] [ -f ] 命令模式

Glob給出的模式包含元字符並將結果傳遞給給定的命令。 例如``glob echo *''。

-f純文件(默認)-d目錄-a所有類型

幫助 [ cmd ]

cmd打印幫助或者如果未指定cmd ,則打印可用命令的列表。

工作 [ -v ]

列出運行作業。 -v表示冗長,可以指定幾個-v。

殺死所有| job_no

使用job_no或所有作業刪除指定的作業。 (對於job_no查看工作

lcd ldir

更改當前的本地目錄ldir 。 前一個本地目錄存儲為' - '。 你可以用`lcd - '來改變目錄。

lpwd

在本地機器上打印當前工作目錄。

ls params

列出遠程文件。 您可以將此命令的輸出重定向到文件或通過管道重定向到外部命令。 默認情況下,ls輸出被緩存,以查看新列表使用rels緩存刷新。

mget [ -c ] [ -d ] [ -a ] [ -E ] [ -O base ] 文件

獲取具有擴展通配符的選定文件。

-c繼續,reget。 -d創建與文件名相同的目錄,並將文件取入當前目錄中。 -E在成功傳輸後刪除遠程文件-a使用ascii模式(二進制是默認模式)-O指定文件應放置在的基本目錄或URL

鏡像 [ OPTS ] [ [ 目標 ]]

將指定的源目錄鏡像到本地目標目錄。 如果目標目錄以斜線結尾,則將源基本名稱追加到目標目錄名稱。 源和/或目標可以是指向目錄的URL。

-c, - 如果可能,繼續繼續鏡像工作-e, - 刪除遠程站點上不存在的文件-s, - 根據遠程站點,allow-suid設置suid / sgid位--allow-chown嘗試設置所有者和組上的文件-n, - 僅更新的下載只有更新的文件(-c將不起作用)-r,--no-recursion不轉到子目錄-p,--no-perms不設置文件權限--no-umask不對文件模式應用umask -R, - 反向鏡像(放置文件)-L,--deference參數下載符號鏈接作為文件-N, - 新 - 不僅僅是FILE下載文件比文件更新-P, - parallel [= N]並行下載N個文件-i RX , - 包括RX包含匹配文件-x RX , - 排除RX排除匹配文件-I GP ,--include- glob GP包含匹配文件-X GP ,--exclude-glob GP排除匹配文件-v,--verbose [=級別]詳細操作--use-cache使用緩存目錄列表 - remove-source-files傳輸後刪除文件(謹慎使用) - 與--allow-chown相同--allow-suid --no-umask

當使用-R時,第一個目錄是本地的,第二個是遠程的。 如果省略第二個目錄,則使用第一個目錄的基本名稱。 如果兩個目錄都被省略,則使用當前的本地和遠程目錄。

RX是一個擴展的正則表達式,就像在egrep (1)中一樣。

GP是一個全局模式,例如`* .zip'。

包含和排除選項可以多次指定。 這意味著如果文件或目錄與包含匹配並且與包含之後的排除不匹配,或者不匹配任何內容並且第一個檢查被排除,則該文件或目錄將被鏡像。 目錄與附加的斜線匹配。

請注意,使用-R時(反向鏡像),服務器上不會創建符號鏈接,因為ftp協議無法完成此操作。 要上傳鏈接引用的文件,請使用`mirror -RL'命令(將符號鏈接視為文件)。

可以使用--verbose = level選項或多個-v選項(例如-vvv)選擇詳細程度級別。 級別是:

0 - 無輸出(默認)1 - 打印操作2 - +打印未刪除的文件名(未指定-e時)3 - +打印鏡像目錄名

- 只有更新才會關閉文件大小比較,即使大小不同,也只上載/下載較新的文件。 默認情況下,如果大小不同,則會下載/上載較早的文件。

如果指定了URL而不是目錄,則可以在兩台服務器之間進行鏡像。 如有可能,FXP將自動用於ftp服務器之間的傳輸。

mkdir [ -p ] dir(s)

製作遠程目錄。 如果使用-p,則創建路徑的所有組件。

模塊 模塊 [ args ]

使用dlopen(3)函數加載給定的模塊 。 如果模塊名稱不包含斜線,則會在module:path變量指定的目錄中搜索它。 參數傳遞給module_init函數。 有關技術細節,請參閱README.modules。

更多 文件

與cat 文件 |相同 更多'。 如果PAGER被設置,它被用作過濾器。 (另見catzcatzmore

mput [ -c ] [ -d ] [ -a ] [ -E ] [ -O base ] 文件

使用通配符擴展上傳文件。 默認情況下,它使用本地名稱的基本名稱作為遠程名稱。 這可以通過`-d'選項來改變。

-c continue,reput -d創建與文件名相同的目錄並將文件放入它們而不是當前目錄中-E成功傳輸後刪除遠程文件(危險)-a使用ascii模式(二進制是默認模式)-O指定基本目錄或URL應放置文件的位置

mrm 文件(s)

與“glob rm”相同。 使用通配符擴展刪除指定的文件。

mv file1 file2

file1重命名為file2

nlist [ args ]

列出遠程文件名稱

打開 [ -e cmd ] [ -u 用戶 [, 傳球 ]] [ -p 端口 ] 主機 | 網址

選擇一個ftp服務器。

pget [ OPTS ] rfile [ -o lfile]

使用多個連接獲取指定的文件。 這可以加速傳輸,但加載網絡會嚴重影響其他用戶。 只有在你真的必須盡快轉移文件時才使用,或者其他用戶可能會發瘋:)選項:

-n maxconn設置最大連接數(默認5)

put [ -E ] [ -a ] [ -c ] [ -O base ] lfile [ -o rfile ]

上傳帶有遠程名稱rfile的 lfile 。 如果省略-o,則將lfile的基本名稱用作遠程名稱。 不擴展通配符,使用mput

-o指定遠程文件名(缺省 - lfile的basename)-c繼續,請求它需要權限覆蓋遠程文件-E成功傳輸後刪除本地文件(危險)-a使用ascii模式(二進制是缺省值)-O指定基本目錄或URL應放置文件的位置

PWD

打印當前的遠程目錄。

隊列 [ -n num ] cmd

將給定的命令添加到順序執行的隊列中。 每個站點都有自己的隊列。 `-n'將命令添加到隊列中的給定項目之前。 不要嘗試排隊`cd'或'lcd'命令,它可能會混淆lftp。 而是在`queue'命令之前執行cd / lcd,它會記住命令的完成位置。 可以通過“隊列等待”排隊已經運行的作業,但作業將繼續執行,即使它不是隊列中的第一個作業。

`隊列停止'將停止隊列,它不會執行任何新的命令,但已經運行的作業將繼續運行。 您可以使用`隊列停止'來創建一個空的停止隊列。 `隊列開始'將恢復隊列執行。 當你退出lftp時,它會自動啟動所有停止的隊列。

沒有參數的`隊列'將創建一個停止隊列或打印隊列狀態。

隊列 - 刪除| -d [ 索引或通配符表達式 ]

從隊列中刪除一個或多個項目。 如果未給出參數,則刪除隊列中的最後一個條目。

隊列 - 移動| -m < 索引或通配符表達式 > [ 索引 ]

在給定的隊列索引之前移動給定的項目,或者在沒有給出目的地的情況下移動到最後。

-q安靜。 -v是冗長的。 -Q以可用於重新排隊的格式輸出。 用於--delete。 > get file&[1] get file> queue wait 1> queue get another_file> cd a_directory> queue get yet_another_file queue -d 3刪除隊列中的第三項。 queue -m 6 4在第四個之前移動隊列中的第六個項目。 隊列-m“get * zip”1將所有匹配“get * zip”的命令移至隊列的開頭。 (這些項目的順序被保留。)queue -d“get * zip”刪除所有匹配“get * zip”的命令。

報價 cmd

對於FTP - 發送未解釋的命令。 謹慎使用 - 可能會導致未知的遠程狀態,從而導致重新連接。 您無法確定由於引用的命令而導致的任何遠程狀態更改是否穩定 - 可以隨時通過重新連接進行重置。

對於HTTP - 特定於HTTP操作。 語法:``quote []''。 命令可以是“set-cookie”或“post”。

打開http://www.site.net引用set-cookie“variable = value; othervar = othervalue”設置http:post-content-type application / x-www-form-urlencoded quote post /cgi-bin/script.cgi “var = value&othervar = othervalue”> local_file

對於FISH - 發送未解釋的命令。 這可以用來在服務器上執行任意命令。 該命令不得在新行開始處輸入或打印###。 如果是這樣,協議將會失去同步。

打開fish:// server quote find -name zip

reget rfile [ -o lfile ]

與`get -c'相同。

雷斯 [ args ]

與'ls'相同,但忽略緩存。

renlist [ args ]

與`nlist'相同,但忽略緩存。

重複 [ 延遲 ] [ 命令 ]

重複該命令。 在命令之間插入延遲,默認1秒。 例:

重複在明天 - 鏡子重複1d鏡子

reput lfile [ -o rfile ]

與`put -c'相同。

rm [ -r ] [ -f ] 文件

刪除遠程文件。 不擴展通配符, 為此使用mrm 。 -r用於遞歸目錄刪除。 要小心,如果出現問題,可能會丟失文件。 -f壓縮錯誤消息。

rmdir dir(s)

刪除遠程目錄。

scache [ 會話 ]

列出緩存的會話或切換到指定的會話。

設置 [ var [ val ]]

將變量設置為給定值。 如果該值被省略,則取消設置該變量。 變量名的格式為``name / closure'',其中閉包可以指定設置的確切應用。 詳情請參閱下文。 如果set不帶變量調用,那麼只列出更改後的設置。 它可以通過選項進行更改:

- 列出所有設置,包括默認值-d僅列出默認值,不需要當前值

網站 site_cmd

執行站點命令site_cmd並輸出結果。 你可以重定向它的輸出。

睡眠 間隔

睡眠時間間隔並退出。 時間間隔默認為秒,但可以分別用'm','h','d'作為分鐘,小時和天數的後綴。 另見at

插槽 [ 名稱 ]

選擇指定的插槽或列出分配的所有插槽。 插槽是與服務器的連接,有點像虛擬控制台。 您可以創建連接到不同服務器的多個插槽並在它們之間切換。 您還可以使用slot:name作為評估該插槽位置的偽URL。

默認的readline綁定允許使用Meta-0 - Meta-9鍵在名為0-9的插槽之間快速切換(通常您可以使用Alt而不是Meta)。

文件

執行記錄在文件文件中的命令。

暫停

停止lftp過程。 請注意,傳輸也將停止,直到您使用shell的fg或bg命令繼續進行。

用戶 用戶 [ 合格 ]
用戶 網址 [ 通過 ]

使用指定的信息進行遠程登錄。 如果您指定一個包含用戶名的URL,則輸入的密碼將被緩存,以便futute URL引用可以使用它。

打印lftp版本。

等待 [ jobno ]
等一下

等待指定的作業終止。 如果省略jobno,請等待最後一次後續作業。

“全部等待”等待所有工作終止。

zcat 文件

與cat相同,但通過zcat過濾每個文件。 (另見catmorezmore

zmore 文件

相同,但通過zcat過濾每個文件。 (另請參閱catzcat等)

設置

啟動時,lftp執行〜/ .lftprc〜/ .lftp / rc 。 您可以在其中放置別名和“設置”命令。 有些人更喜歡看完整的協議調試,使用`debug'打開調試。

/etc/lftp.conf中還有一個系統範圍的啟動文件。 它可以在不同的目錄中,參見文件部分。

lftp具有以下可設置變量(您也可以使用`set -a'查看所有變量及其值):

bmk:save-passwords (bool)

在“書籤添加”命令中的〜/ .lftp /書籤中保存純文本密碼。 默認關閉。

cmd:at-exit (字符串)

字符串中的命令在lftp退出前執行。

cmd:csh-history (bool)

啟用csh歷史擴展。

cmd:default-protocol (string)

當'open'與沒有協議的主機名一起使用時,使用該值。 默認是`ftp'。

cmd:fail-exit (布爾)

如果為true,則在無條件(不含||和開始處的&&)命令失敗時退出。

cmd:長時間運行 (秒)

命令執行時間被認為是“長”,並在下次提示之前發出嘟嘟聲。 0意味著關閉。

cmd:ls-default (字符串)

默認的ls參數

cmd:move-background (boolean)

當錯誤時,lftp在退出時拒絕進入背景。 強制使用`exit bg'。

cmd:prompt (string)

提示。 lftp識別下列反斜杠轉義的特殊字符,它們的解碼如下:

\ @

如果當前用戶不是默認值,則插入@

\一個

一個ASCII鈴聲字符(07)

。\ E

一個ASCII轉義字符(033)

\H

您連接到的主機名

\ n

新隊

\ S

客戶端的名稱(lftp)

\ S

當前插槽名稱

您登錄的用戶的用戶名

帶有\ U

遠程站點的URL(例如,ftp://g437.ub.gu.se/home/james/src/lftp)

符\ v

lftp的版本(例如,2.0.3)

\ W

遠程站點的當前工作目錄

\ W

遠程站點當前工作目錄的基本名稱

\ nnn

該字符對應於八進制數字nnn

\\

反斜杠

\?

如果前面的替換為空,則跳過下一個字符。

\ [

開始一系列非打印字符,這些字符可用於將終端控制序列嵌入到提示中

\]

結束一系列非打印字符

cmd:remote-completion (bool)

一個布爾值來控制lftp是否使用遠程完成。

cmd:verify-host (bool)

如果為true,則lftp立即在`open'命令中解析主機名。 如果給出'&',或者如果在檢查過程中按^ Z,也可以跳過檢查單個“打開”命令。

cmd:verify-path (bool)

如果為true,則lftp檢查`cd'命令中給出的路徑。 如果給出'&',或者如果在檢查過程中按^ Z,也可以跳過檢查單個“cd”命令。 例子:

set cmd:verify-path / hftp:// * false cd directory&

dns:SRV查詢 (布爾)

查詢SRV記錄並在gethostbyname之前使用它們。 只有在未明確指定端口時才使用SRV記錄。 有關詳細信息,請參閱RFC2052。

dns:cache-enable (bool)

啟用DNS緩存。 如果它關閉,則每次重新連接時,lftp都會解析主機名。

dns:cache-expire (時間間隔)

有時間為DNS緩存條目生存。 它的格式為+,例如1d12h30m5s或僅36h。 要禁用到期,請將其設置為“inf”或“從不”。

dns:cache-size (數字)

DNS緩存條目的最大數量。

dns:致命超時 (秒)

限制DNS查詢的時間。 如果DNS服務器不可用太久,lftp將無法解析給定的主機名稱。 0表示無限制,默認值。

dns:順序 (協議名稱列表)

設置DNS查詢的順序。 默認是`inet inet6',這意味著首先在inet系列中查找地址,然後inet6和首先使用匹配。

dns:use-fork (bool)

如果為true,則lftp將在解析主機地址之前分叉。 默認值是true。

魚:貝殼 (串)

在服務器端使用指定的shell。 默認是/ bin / sh。 在某些系統上,當執行cd到不存在的目錄時,/ bin / sh會退出。 lftp可以處理,但它必須重新連接。 如果安裝了bash,請將其設置為/ bin / bash。

ftp:acct (string)

登錄後在ACCT命令中發送此字符串。 結果被忽略。 此設置的關閉格式為user @ host

ftp:anon-pass (字符串)

設置用於匿名ftp訪問驗證的密碼。 默認值是“-name @”,其中name是運行該程序的用戶的用戶名。

ftp:匿名用戶 (字符串)

設置用於匿名ftp訪問認證的用戶名。 默認是“匿名”。

ftp:自動同步模式 (正則表達式)

如果第一個服務器消息符合此正則表達式,請為該主機啟用同步模式。

ftp:bind-data-socket (bool)

將數據套接字綁定到控制連接的接口(處於被動模式)。 缺省值為true,異常是回送接口。

ftp:fix-pasv-address (bool)

如果為true,則當服務器地址處於公共網絡並且PASV從專用網絡返回地址時,lftp將嘗試糾正由服務器返回的PASV命令的地址。 在這種情況下,lftp將替代服務器地址而不是PASV命令返回的地址,端口號不會被更改。 默認值是true。

ftp:fxp-passive-source (bool)

如果是true,則lftp會嘗試首先在被動模式下設置源ftp服務器,否則將設置為目標服務器。 如果第一次嘗試失敗,lftp會嘗試以另一種方式設置它們。 如果其他配置也失敗,則lftp會回落到原始副本。 另見ftp:use-fxp。

ftp:home (string)

初始目錄。 默認為空字符串,表示自動。 如果您不喜歡ftp URL中%2F的外觀,請將其設置為`/'。 此設置的關閉格式為user @ host

ftp:list-options (string)

設置總是附加到LIST命令的選項。 如果默認情況下服務器不顯示點(隱藏)文件,將其設置為“-a”會很有用。 默認為空。

ftp:nop-interval (秒)

當下載文件的尾部時,NOOP命令之間的延遲。 這對於在沖洗數據傳輸之前發送“傳輸完成”消息的ftp服務器很有用。 在這種情況下,NOOP命令可以防止連接超時。

ftp:passive-mode (bool)

設置被動ftp模式。 如果您位於防火牆或啞偽裝路由器的後面,這會很有用。

ftp:端口範圍 (從 - 到)

允許端口範圍為主動模式。 格式為min-max,或者“full”或“any”來指示任何端口。 默認值是'full'。

ftp:代理 (URL)

指定要使用的ftp代理。 要禁用代理,請將此設置為空字符串。 請注意,它是一個使用ftp協議的ftp代理,而不是通過http的ftp。 如果以“ftp://”開頭,默認值將從環境變量ftp_proxy中獲取。 如果您的ftp代理需要認證,請在URL中指定用戶名和密碼。

如果ftp:proxy以http://開頭,則會自動使用hftp(通過http代理的ftp)而不是ftp。

ftp:rest-list (bool)

允許在LIST命令之前使用REST命令。 這對於大型目錄可能很有用,但是一些ftp服務器在LIST之前默默地忽略REST。

ftp:rest-stor (布爾)

如果為false,則在STOR之前lftp不會嘗試使用REST。 對於一些有問題的服務器來說,如果使用了REST和STOR,那麼這些服務器會損壞文件(用零填充)。

ftp:retry-530 (正則表達式)

如果文本與此正則表達式匹配,請在服務器回复530上重試PASS命令。 此設置應該用於區分服務器過載(臨時狀態)和密碼錯誤(永久狀態)。

ftp:retry-530-anonymous (正則表達式)

額外的匿名登錄正則表達式,如ftp:retry-530。

ftp:site-group (string)

登錄後在SITE GROUP命令中發送此字符串。 結果被忽略。 此設置的關閉格式為user @ host

ftp:skey-allow (bool)

允許發送skey / opie答复,如果服務器似乎支持它。 默認開啟。

ftp:skey-force (bool)

不要通過網絡發送純文本密碼,而是使用skey / opie。 如果skey / opie不可用,則認為登錄失敗。 默認關閉。

ftp:ssl-allow (bool)

如果為true,則嘗試與ftp服務器協商SSL連接以進行非匿名訪問。 默認值是true。 只有在使用openssl編譯lftp時,此設置才可用。

ftp:ssl-force (bool)

如果trus,當服務器不支持SSL時拒絕發送密碼。 默認為false。 只有在使用openssl編譯lftp時,此設置才可用。

ftp:ssl-protect-data (bool)

如果為true,請求數據傳輸的ssl連接。 這是cpu密集型的,但提供了隱私。 默認為false。 只有在使用openssl編譯lftp時,此設置才可用。

ftp:stat-interval (秒)

STAT命令之間的間隔。 缺省值是1。

ftp:sync-mode (bool)

如果為true,lftp將一次發送一個命令並等待響應。 如果您使用錯誤的FTP服務器或路由器,這可能很有用。 當它關閉時,lftp會發送一組命令並等待響應 - 當往返時間很長時,它會加快運行速度。 不幸的是,它不適用於所有的ftp服務器,有些路由器有問題,所以默認情況下它是開啟的。

ftp:timezone (字符串)

假設這個時間在LIST命令返回的列表中。 該設置可以是GMT偏移[+ | - ] HH [:MM [:SS]]或任何有效的TZ值(例如歐洲/莫斯科或MSK-3MSD,M3.5.0,M10.5.0 / 3)。 默認值是GMT。 將其設置為空值以承擔由環境變量TZ指定的本地時區。

ftp:use-abor (bool)

如果為false,則lftp不會發送ABOR命令,而是立即關閉數據連接。

ftp:use-fxp (bool)

如果是true,lftp將嘗試建立兩個ftp服務器之間的直接連接。

ftp:use-site-idle (bool)

當為true時,lftp用net:idle參數發送`SITE IDLE'命令。 默認為false。

ftp:use-stat (bool)

如果為true,則lftp在FXP模式傳輸中發送STAT命令以知道已傳輸了多少數據。 另請參閱ftp:stat-interval。 默認值是true。

ftp:use-quit (bool)

如果為true,則在從ftp服務器斷開連接之前,lftp會發送QUIT。 默認值是true。

ftp:verify-address (bool)

驗證數據連接來自控制連接對等的網絡地址。 這可能會阻止可能導致數據損壞的數據連接欺騙。 不幸的是,當它們沒有在數據套接字上設置輸出地址時,這對於具有多個網絡接口的某個ftp服務器來說可能會失敗,因此它在默認情況下被禁用。

ftp:verify-port (bool)

驗證數據連接的遠程端口是20(ftp-data)。 這可能會阻止遠程主機用戶的數據連接欺騙。 不幸的是,太多的窗口甚至unix ftp服務器都忘記在數據連接上設置正確的端口,因此默認情況下這個檢查是關閉的。

ftp:web-mode (bool)

關閉數據連接後斷開連接。 這對完全損壞的ftp服務器可能有用。 默認為false。

hftp:cache (bool)

允許ftp-over-http協議的服務器/代理端緩存。

hftp:代理 (URL)

指定ftp-over-http協議(hftp)的http代理。 顯然,協議hftp在沒有http代理的情況下無法正常工作。 如果以“http://”開頭,則默認值從環境變量ftp_proxy中獲取,否則從環境變量http_proxy中獲取 。 如果您的ftp代理需要認證,請在URL中指定用戶名和密碼。

hftp:use-authorization (bool)

如果設置為關閉,lftp會將密碼作為URL的一部分發送給代理。 這可能是一些代理(例如M-soft)所必需的。 默認打開,lftp將發送密碼作為授權標題的一部分。

hftp:use-head (bool)

如果設置為關閉,lftp將嘗試使用'GET'而不是'HEAD'作為hftp協議。 雖然速度較慢,但它可能允許lftp使用某些不理解或錯誤處理HEADftp://請求的代理。

hftp:use-type (bool)

如果設置為關閉,lftp不會嘗試將`; type ='附加到傳遞給代理的URL。 一些破碎的代理不能正確處理它。 默認打開。

http:接受,http:接受字符集,http:接受語言 (字符串)

指定相應的HTTP請求標頭。

http:cache (布爾)

允許服務器/代理端緩存。

http:cookie (字符串)

發送這個cookie到服務器。 閉包在這裡很有用:
設置cookie / www.somehost.com“param = value”

http:post-content-type (字符串)

指定POST方法的Content-Type http請求頭的值。 默認是``application / x-www-form-urlencoded''。

http:代理 (URL)

指定http代理。 它在lftp通過http協議工作時使用。 默認值取自環境變量http_proxy 。 如果您的代理需要認證,請在URL中指定用戶名和密碼。

http:put-method (PUT或POST)

指定在put上使用哪個http方法。

http:put-content-type (string)

指定PUT方法的Content-Type http請求頭的值。

http:referer (字符串)

指定Referer http請求標頭的值。 單點'。' 擴展到當前目錄URL。 默認是`。'。 設置為空字符串以禁用Referer頭。

http:set-cookies (boolean)

如果為true,則當接收到Set-Cookie頭時,lftp會修改http:cookie變量。

http:用戶代理 (字符串)

字符串lftp在HTTP請求的User-Agent頭中發送。

https:代理 (字符串)

指定https代理。 默認值取自環境變量https_proxy

鏡像:排除正則表達式 (正則表達式)

指定默認排除模式。 您可以通過--include選項覆蓋它。

鏡像:順序 (模式列表)

指定文件傳輸的順序。 例如,將此設置為“* .sfv * .sum”會使鏡像先傳輸匹配* .sfv的文件,然後傳輸匹配* .sum和其他所有文件的文件。 要在其他文件之後處理目錄,請將“* /”添加到模式列表的末尾。

鏡像:parallel-directories (布爾)

如果為true,則鏡像將在並行模式下開始並行處理多個目錄。 否則,它將在移動到其他目錄之前從單個目錄傳輸文件。

鏡像:parallel-transfer-count (數字)

指定允許並行傳輸鏡像的啟動次數。 默認值是1.您可以使用--parallel選項覆蓋它。

模塊:路徑 (字符串)

以冒號分隔的目錄列表查找模塊。 可以通過環境變量LFTP_MODULE_PATH進行初始化。 默認是`PKGLIBDIR / VERSION:PKGLIBDIR'。

net:連接限制 (數量)

並發連接到同一站點的最大數量。 0意味著無限。

net:connection-takeover (bool)

如果為true,則前台連接優先於後台連接,並可中斷後台傳輸以完成前台操作。

淨:閒置 (秒)

在空閒秒數之後斷開與服務器的連接。

net:限制速率 (每秒字節數)

限制數據連接的傳輸速率。 0意味著無限。 您可以指定用冒號分隔的兩個數字,以分別限制下載和上傳速率。

net:limit-max (字節)

限制未使用限制率的積累。 0意味著無限。

net:limit-total-rate (每秒字節數)

限制所有連接的總傳輸速率。 0意味著無限。 您可以指定用冒號分隔的兩個數字,以分別限制下載和上傳速率。 請注意,套接字已接收緩衝區,這會導致網絡鏈路負載在傳輸開始後立即高於此速率限制。 您可以嘗試將net:socket-buffer設置為相對較小的值以避免這種情況。

net:limit-total-max (字節)

限制未使用的限制總費率的積累。 0意味著無限。

net:最大重試次數 (number)

一次操作的連續重試最大次數沒有成功。 0意味著無限。

網絡:無代理 (字符串)

包含不應使用代理的逗號分隔的域列表。 默認值取自環境變量no_proxy

net:persist-retries (數字)

忽略這些硬錯誤。 當用戶太多時,用於登錄到可以回复5xx的多功能ftp服務器。

net:reconnect-interval-base (秒)

設置重新連接之間的基本最小時間。 實際時間間隔取決於net:reconnect-interval-multiplier和執行操作的嘗試次數。

net:reconnect-interval-max (秒)

設置最大重新連接間隔。 當乘以net:reconnect-interval-multiplier後的當前時間間隔達到此值(或超過此值)時,它會重置為net:reconnect-interval-base。

net:reconnect-interval-multiplier (real number)

每次新嘗試執行操作失敗時,設置基數區間乘以的乘數。 當間隔達到最大值時,重置為基準值。 請參閱net:reconnect-interval-base和net:reconnect-interval-max。

net:套接字緩衝區 (字節)

對SO_SNDBUF和SO_RCVBUF套接字選項使用給定的大小。 0表示系統默認。

net:socket-maxseg (字節)

使用給定大小的TCP_MAXSEG套接字選項。 並不是所有的操作系​​統都支持這個選項,但是linux可以。

淨:超時 (秒)

設置網絡協議超時

ssl:ca-file文件路徑)

使用指定的文件作為認證中心證書。

ssl:ca-path (目錄的路徑)

使用指定的目錄作為認證中心證書庫。

ssl:crl-file文件路徑)

使用指定的文件作為證書撤銷列表證書。

ssl:crl-path (目錄的路徑)

使用指定的目錄作為證書撤銷列表證書存儲庫。

ssl:密鑰文件文件路徑)

使用指定的文件作為您的私鑰。

ssl:cert-file文件路徑)

使用指定的文件作為您的證書。

ssl:verify-certificate (布爾)

如果設置為yes,則驗證服務器的證書是由已知的證書頒發機構簽署的,而不是證書撤銷列表。

xfer:clobber (布爾)

如果此設置關閉,get命令將不會覆蓋現有文件並生成錯誤。 默認打開。

xfer:eta-period (秒)

計算加速平均稅率以生產ETA的期間。

xfer:eta-terse (布爾)

顯示簡潔的ETA(只有高價部件)。 默認值是true。

xfer:最大重定向 (數字)

最大數量的重定向。 這對於通過HTTP進行下載很有用。 缺省值為0,禁止重定向。

xfer:rate-period (秒)

計算加齒平均費率的時間段。

變量的名稱可以縮寫,除非它變得模糊。 `:'之前的前綴也可以省略。 您可以為不同的閉包設置多個變量,因此您可以獲得特定狀態的特定設置。 在用斜杠'/'分隔變量名後指定閉包。

' dns :',' net :',' ftp :',' http :','hftp:'域變量的關閉當前只是您在“open”命令中指定的主機名稱關閉是沒有意義的,例如dns:cache-size)。 對於某些`cmd:'域變量,閉包是當前沒有路徑的URL 。 對於其他變量,目前尚未使用。 請參閱示例lftp.conf中的示例。

某些命令和設置需要一個時間間隔參數。 它的格式為Nx [Nx ...],其中N是時間量,x是時間單位:d - 天,h - 小時,m - 分鐘,s - 秒。 默認單位是秒。 例如5h30m。 此外,時間間隔可以是“無限”,“inf”,“從不”,“永遠” - 它意味著無限的時間間隔。 例如“永遠睡眠”或“設置DNS:緩存永不過期”。

FTP異步模式

Lftp可以通過一次發送多個命令來加速ftp操作,然後檢查所有響應。 請參閱ftp:同步模式變量。 有時這不起作用,因此同步模式是默認模式。 您可以嘗試關閉同步模式並查看它是否適用於您。 據了解,在一個網絡數據包中有多個FTP命令的情況下,一些處理地址轉換的網絡軟件工作不正確。

RFC959說:“用戶進程在完成回復之前發送另一個命令將違反協議,但服務器FTP進程應排隊在前一個命令正在進行時到達的任何命令”。 另外,RFC1123指出:“實現者不得假定控制連接上的READ邊界與Telnet EOL序列(CR LF)之間存在任何對應關係,”“和”從控制連接發出的單個READ可能包含多個FTP命令“ “。

因此,一次發送多個命令一定是安全的,這會加快操作速度,並且似乎適用於所有基於Unix和VMS的ftp服務器。 不幸的是,基於Windows的服務器通常無法在一個數據包中處理多個命令,因此無法處理某些損壞的路由器。

OPTIONS

-d

打開調試模式

-e 命令

執行給定的命令,不要退出。

-p 端口

使用給定的端口進行連接

-u 用戶 [ 通過]

使用給定的用戶名密碼進行連接

-f script_file

執行文件中的命令並退出

-c 命令

執行給定的命令並退出

也可以看看

ftpd (8), ftp (1)
RFC854(telnet),RFC959(ftp),RFC1123,RFC1945(http / 1.0),RFC2052(SRV RR),RFC2068(http / 1.1),RFC2228(ftp安全擴展),RFC2428(ftp / ipv6)。
http://www.ietf.org/internet-drafts/draft-murray-auth-ftp-ssl-05.txt(ftp over ssl)。

重要提示:使用man命令( %man )查看特定計算機上的命令使用方式。