歡迎您光臨本站 註冊首頁

linux下使用 lftp

←手機掃碼閱讀     火星人 @ 2014-03-29 , reply:0

一直想找一個在linux里能與FlashFXP比肩的ftp客戶端,試過了若干種GUI的ftp client,有free的也有non-free的,但實際用過得同志應該清楚,說它們是lj,恐怕傷了作者的心,但又實在找不出其他形容。轉了一圈又回到lftp,沒有GUI,對於初學者來說,雖然有一點點痛苦,但只要想想,lftp能在眾多client中屹立不倒這麼多年,而且至今仍然是linux 里最首推崇的利器,足以說明他的功能和易用性都是不錯的。我的經驗是,花一點時間來學lftp是值得的,不要再徒勞地尋找GUI FTP Client,在unix世界里,沒有FlashFXP!

首先來說一下lftp登錄站點的操作,有好幾種方式,都非常簡單。

1. 一氣呵成式
$ lftp (ftp://)user:password@site:port
比較常用於網頁或bbs上給出的現成鏈接,缺點是password顯示為明文,推薦在月黑風高、四下無人的環境里偷偷輸入...如果不幸背後有人
$ lftp (ftp://)user@site:port
然後系統會提示輸入password,這是就是******了

2. 老實巴交型

$ lftp site -p port -u user,password
這是lftp說明文檔里給出的標準方式,這一招比較費體力,請根據自己身體情況量力而行。如果體能一般,可以
$ lftp site:port -u user,password
似乎是略微省事一點兒,我一般也用這種方法

3. 五短之中暗藏一長

這是一個遞歸嵌套的招式%¥#@!×&
$ lftp
lftp:~>lftp user:password@site:port
就是說在lftp控制台里進行操作,和在系統終端是完全一樣的,你仍然可以毫無顧忌地用使用前面兩招,同時也可以用o或open代替lftp,後面站點用戶名密碼的格式也可以根據自己偏好輸入

4. 終極大招

每次登錄都狂敲一行user:password@site:port,長年累月,就算李鐵來了也扛不住。所以還是要讓lftp把常用的站點記下來,就象FlashFXP里的站台管理器,在lftp里,叫做bookmark,具體的咱們日後再說

登錄完成第一件事就是想看看這個伺服器上有什麼好東東。
操作和終端里是一樣的,ls就是列出伺服器目錄。有一點要說明,第一次ls之後,目錄表就被保存到了本地cache,這樣再次ls就不能得到這個目錄下最新的列表,這時可以用rels重新下載目錄表。這裡的cache是lftp的默認設置,目的無非就是更快的得到列表,有時卻不符和你的使用習慣。可以用 cache on和cache off開關cache,也可以用cache flush來清空cache。
更改目錄也是cd,沒什麼可說的,lftp也支持tab匹配功能,大大減少了勞動強度。

lftp 支援了六種模式, ftp, ftps, http, https, hftp, fish and file(當然了 https 和 ftps 的支援必須在編譯就和 openssl library 一起編譯好)。

lftp 內建了 shell-like 的命令格式, 允許在背景同時執行多個命令(&)。所有背景執行的工作都是在同一個程序中(process), 能將前景執行的命令放到背景執行(Ctrl-z), 或從背景拿回前景執行(wait 或 fg), 甚至還可以經由上個命令的傳回值來決定目前這個命令是否要執行(&& ||)。

在結束 lftp 時, 如果還有程序執行中, lftp 會將自己切換到 no hup 模式?K放到背景執行。因此不必擔心執行 lftp 當中無法登出。

!
可執行本地端 shell 中的命令, 如 !ls /usr/local/bin/
由於 lftp ?K沒有 lls(顯示本地端檔案列表的指令), 故可用 !ls 來替代。

alias []
定義別名
alias less more
alias reconnect "close; cd ."
直接輸入 alias 即可看到目前定義了那些別名。如果只輸入 alias name 的話, 則是取消 name 這個別名。

bookmark SUBCMD
設定書?, 可將目前站台及所在目錄設成書?, 下次可直接進來, 不用再 cd 來 cd 去的

bookmark add name 用來新增名稱為 name 的書?
bookmark del name 刪除名稱為 name 的書?
bookmark list 顯示目前有設定那些書?(另外直接打 bookmark 和 bookmark list 的結果一樣)
bookmark edit 呼叫編輯器修改書? (~/.lftp/bookmarks)

cd 切換遠端目錄

cache SUBCMD
管理 lftp 的 cache

rels []
從 cache 中顯示遠端檔案列表
rels 則不會從 cache 中讀取

recls opts [path/]pattern
從 cache 中顯示遠端的檔案列表, 應該算是 ls 的加強版, 有很多參數可用,應該是可用來產生各種不同>的檔案列表以供其他程式使用。
recls 則不會從 cache 中讀取

du options
計算遠端整個目錄?子萌萘?br />
get OPTS -o
抓取遠端檔案

get rfile -o lfile
抓 rfile 到本地改名為 lfile
-c 為續傳
-E 抓檔完成後, 將遠端的檔案砍了
-a 為 ascii mode, 預設為 binary mode
-O 設定 base directory 為本地端放檔案的目錄

[火星人 ] linux下使用 lftp已經有734次圍觀

http://coctec.com/docs/linux/show-post-203277.html