lftp 用法彙總

2022-09-19 18:15:17 字數 4085 閱讀 5292

lftp是linux下的乙個ftp工具,支援ftp, ftps, http, https, hftp, fish, sftp, file, bittorrent等協議(支援https 和 ftps,必須編譯時和 openssl library 一起編譯)。lftp 內建了 shell-like 的命令格式, 允許在背景同時執行多個命令(&)。所有背景執行的工作都是在同乙個程式中(process), 能將前景執行的命令放到背景執行(ctrl-z), 或從背景拿回前景執行(wait 或 fg), 甚至還可以經由上個命令的傳回值來決定目前這個命令是否要執行(&& ||)。在結束 lftp 時, 如果還有程式執行中, lftp會將自己切換到no hup模式並放到背景執行,因此不必擔心正在執行的任務會結束。

1、配置

在用lftp訪問國內一些ftp伺服器時,往往看到的中文是亂碼,這是由於伺服器和本地編碼不一致造成的。我們只要在主目錄下新建乙個檔案~/.lftprc或者~/.lftp/rc,並在其中加入以下內容:

debug 3

set ftp:charset gbk

set file:charset utf-8

#set ftp:passtive-mode no

#alias utf8 " set ftp:charset utf-8"

#alias gbk " set ftp:charset gbk"

2、登入伺服器

//顯示書籤

cb@127:~$ lftp -c bookmark list

net

lingbooks

zdhz 23.65.2.16

cb@127:~$ lftp zdhz

lftp 23.65.2.16:~> user cb

口令:

//同時登入多個ftp伺服器,使用slot設定別名,並在它們之間切換

lftp [email protected]:~> slot zdhz

lftp zdhz [email protected]:~> slot net

lftp net [email protected]:~> open ftp.net

cd 成功, 當前目錄=/

lftp net ftp.net:/> slot zdhz

lftp zdhz [email protected]:~> slot net

lftp net ftp.net:/>

lftp zdhz [email protected]:/> cd working/

lftp zdhz [email protected]:/working> lcd ~/tmp/

lcd 成功, 本地目錄=/home/cb/tmp

lftp zdhz [email protected]:/working> get kaiti.rar

1782318 位元組 已傳輸

lftp [email protected]:/ebook> mget 十天學會php.rar 程式設計實踐.rar -o ~/tmp/

8004043 位元組, 在 2 秒中傳輸完畢 (3.72m/s)

總共傳輸 2 個檔案

4、上傳

//指定上傳的目標目錄需要每個檔案之後用-o選項(小寫),否則上傳到伺服器的當前目錄

lftp zdhz [email protected]:/> put source1.pdf -o ebook/ source2.pdf -o ebook/ linux命令大全.chm

52866871 位元組, 在 5 秒中傳輸完畢 (11.09m/s)

總共傳輸 3 個檔案

//使用萬用字元上傳多個檔案,注意:使用-o引數指定上傳的基目錄,要大寫

lftp zdhz [email protected]:/> mput source*.pdf -o ebook/

52511692 位元組, 在 4 秒中傳輸完畢 (11.14m/s)

總共傳輸 2 個檔案

//映象上傳整個目錄,可用於同步

lftp zdhz [email protected]:/> mirror -r ~/ebook/linux/lfs/ ebook/

全部: 15 個目錄,137 個檔案, 0 個符號鏈結

新建: 137 個檔案, 0 個符號鏈結

4456290 位元組, 在 6 秒中傳輸完畢 (688.9k/s)

lftp zdhz [email protected]:/> ls ebook/

total 0

drw-rw-rw- 1 user group 0 sep 28 16:50 .

drw-rw-rw- 1 user group 0 sep 28 16:50 ..

drw-rw-rw- 1 user group 0 sep 28 16:50 lfs

5、刪除伺服器上檔案

//刪除多個檔案

lftp zdhz [email protected]:/> rm ebook/source1.pdf linux命令大全.chm

rm 成功, 刪除 2 個檔案

//刪除整個目錄

lftp zdhz [email protected]:/> rm -r ebook/

rm 成功, 刪除 `ebook/'

//刪除某個目錄下的多個檔案

lftp zdhz [email protected]:/> mrm ebook/*.pdf

rm 成功, 刪除 2 個檔案

6、任務佇列

lftp [email protected]:/pub/iso> jobs

0 queue (ftp://

[email protected])

queue is stopped.

lftp [email protected]:/pub/iso> queue get rettcd.iso

lftp [email protected]:/pub/iso> jobs

0 queue (ftp://

[email protected])

queue is stopped.

commands queued:

1. get rettcd.iso

lftp [email protected]:/pub/iso> queue mirror linux/

lftp [email protected]:/pub/iso> jobs

0 queue (ftp://

[email protected])

queue is stopped.

commands queued:

1. get rettcd.iso

2. mirror linux/

lftp [email protected]:/pub/iso> queue start

lftp [email protected]:/pub/iso> jobs

0 queue (ftp://

[email protected])

now executing: 1 get rettcd.iso

commands queued:

1. mirror linux/

1 get rettcd.iso

'rettcd.iso' at 4772864 (9%) 3.00m/s eta:14s receiving data

$ lftp -c 'mirror -c -n -p -n=4 ~/tmp/'

小結:常用命令:cd, lcd, get, mget, put, mput, mirror, rm, mrm, pget, queue, jobs

mget, mput, mrm可使用萬用字元*匹配多個檔案

預設mirror:set-permissions on,則mirror

會拷貝檔案和目錄的(原有)許可權,否則(off)利用檔案系統建立檔案和目錄的規則重新設定檔案目錄的許可權(檔案666 &

umask,目錄777 &

umask);和-p(或—no-perms)將該變數設定為off是等效的;建議在~/.lftprc中將該變數設定為off狀態:set

mirror:set-permission off

lftp命令 非常詳細的lftp指令

lftp的意思是用lftp登入到ftp伺服器上 lftp ip p port u user,password e commands bye 下面介紹下ftp裡面常用的指令 用法 1 lftp username password 127.0.0.1 21 回車 2 lftp username 127....

lftp使用感覺

發現lftp比ftp 都是客戶端 要強勁多了,使用後發現,ftp裡的reget命令,是需要這個檔案之前必須就存在的,另外ftp的斷點重傳不是自動,需要手工操作。而使用lftp裡的mget c txt這樣的命令是可以自動重連的 目前就只測試過網路斷開後,過一會就重連上去,不知道長時間的斷網是否還會繼續...

lftp使用詳解

剛進入linux殿堂的lftp的我,決定好好將此命令的資料整理如下,以便學習.設定 lftprc 不用慌,這是由於伺服器和本地編碼不一致造成的。我們只要在主目錄下新建乙個檔案 lftprc或者 lftp rc 每次使用lftp時候其都載入 並在其中加入以下內容 debug 3 set ftp cha...