免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1272 | 回复: 0
打印 上一主题 下一主题

lftp簡要功能說明 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-26 21:14 |只看该作者 |倒序浏览
lftp簡要功能說明
參考網址:
http://moto.debian.org.tw/viewtopic.php?t=2182
指令名稱:lftp
簡要功能說明:多才多藝的檔案傳輸工具
詳細說明: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 模式並放到背景執行。因此不必擔心執行 lftp
當中無法登出。
參數:
lftp :~> help
!
alias [
[]]
anon
bookmark [SUBCMD]
cache [SUBCMD]
cat [-b]
cd
chmod [OPTS] mode file...
close [-a]
[re]cls
[opts] [path/][pattern]
debug [|off] [-o ]
du [options]
exit [|bg]
get [OPTS] [-o ]
glob [OPTS]
help []
history -w file|-r file|-c|-l [cnt]
jobs
[-v]
kill all|
lcd
lftp [OPTS]
ls
[]
mget [OPTS]
mirror [OPTS] [remote [local]]
mkdir [-p]
module name [args]
more
mput [OPTS]
mrm
mv [re]nlist []
open [OPTS]
pget
[OPTS] [-o ]
put [OPTS] [-o ]
pwd
[-p]
queue [OPTS] []
quote
repeat [delay] [command]
rm
[-r] [-f]
rmdir [-f]
scache []
set [OPT]
[ []]
site
source
user
[]
version
wait []
zcat
zmore
可用 help command 來看更詳細的說明
如 help
alias
範例:
!
可執行本地端 shell 中的命令, 如 !ls
/usr/local/bin/
由於 lftp 並沒有 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)
cat [OPTS]
files...
就是 cat 啦
more
功用和 cat | more
一樣
zcat
可直接看 .gz 的文件
zmore
和 more
一樣, 但是可看 .gz 的文件
chmod [OPTS] mode file...
更改檔案權限
chmod
--recursive
遞迴的更改權限
cd 切換遠端目錄
cache
[SUBCMD]
管理 lftp 的 cache
[re]ls []
從 cache
中顯示遠端檔案列表
rels 則不會從 cache 中讀取
[re]cls [opts] [path/][pattern]

cache 中顯示遠端的檔案列表, 應該算是 ls 的加強版, 有很多參數可用,應該是可用來產生各種不同>的檔案列表以供其他程式使用。
recls
則不會從 cache 中讀取
du [options]
計算遠端整個目錄佔用容量
get [OPTS]
[-o ]
抓取遠端檔案
get rfile -o lfile
抓 rfile 到本地改名為
lfile
-c 為續傳
-E 抓檔完成後, 將遠端的檔案砍了
-a 為 ascii mode, 預設為 binary mode
-O
設定 base directory 為本地端放檔案的目錄
mget [OPTS]
下載遠端檔案(可用
wildcard expansion 也就是 *)
pget [OPTS] [-o
]
使用多個連結來下載檔案, 預設為五個。
-n 3 為三個連結
jobs
[-v]
顯示目前有那些程序在背景執行
-v 顯示詳細的資訊(-v 可多加幾個來顯示更詳細的資訊)
lcd
切換本地端的目錄
mirror [OPTS] [remote [local]]
下載整個目錄(樓上的 get
只能用來抓檔案)
-c 續傳
-e 這個要小心一些, 比較遠端和本地端的檔案, 假如遠端沒有的, 就將本地端的檔案刪除,
也就是將本地端和遠端資料同步。
-R 上傳整個目錄
-n 只下載較新的檔案
-r 不用遞迴到目錄中
--parallel=n 同時下載
n 個檔案(預設一次只下載一個)
module name [args]
載入模組
put [OPTS]
[-o ]
上傳檔案
mput [OPTS]
上傳檔案(可用 wildcard
expansion 也就是 *)
mv
將遠端的 file1 改名為
file2
mrm
用 wildcard expansion 方式來刪除遠端檔案
open
[OPTS]
開啟某個站台
open -u [,] -p
site
queue [OPTS] []
將 cmd 放到佇列中等待執行
-d index 將編號為
index 的 job 刪除
-m index new_index 將編號為 index 的 job 移至編號 new_index,
插隊專用。
-n index 在編號 index 之前新增一個 job
wait
[]
將背景執行中的程序移至前景(也可用 fg)
kill all|
刪除全部的 jobs 或
job_no
repeat [delay] [command]
每隔 delay 秒, 重覆執行 command,
預設是每隔一秒
rm [-r] [-f]
移除遠端檔案
mkdir [-p]
建立遠端目錄
rmdir [-f]
移除遠端目錄
set [OPT]
[ []]
設定變數
直接鍵入 set 可看目前定義了那些變數
source
讀取
file, 並執行 file 中的命令(應該是和 bash 中的 source 命令是一樣的吧)
debug [|off]
[-o ]
設定 debug level 為 level
-o 將輸出導向至 file
exit
[|bg]
結束 lftp
此時若還有 jobs, 則會將 lftp 放至背景執行,
繼續未完成的工作
history -w file|-r file|-c|-l [cnt]
和 bash 中的 history
功能一樣
[re]nlist []
只顯示遠端的檔名
pwd
[-p]
顯示目前遠端所在目錄
-p 連登入密碼也顯示
scache []
只打 scache
顯示目前所有的 session, 加上 session_no 可切換至其他的
session,
對於同時開啟多個站台或同個站台不同目錄間切換。
小弟有遇過某些站台, 一個 ip
只允許登入一次的,如果想同時抓好幾個檔案在不同目錄下,就
只能一次抓一個,等到抓完了才能再切換到別的目錄去抓第二個, 這時 lftp 的 queue
就派上
用場了。一般下了 get, mget 的話, 檔案就直接開始下載了, 這時就無法再切換到其他目錄了, 因此, 先將 queue 給停止, 首先下個
queue, 按 enter, 再下個 jobs 即可看到目前 qu
eue 是停止的。這時再將要抓的東東一個個加入 queue 中,
等到要抓的東東都進入 queue 後
, 再下 queue start 一次全部傳送,
這樣子可省去隨時注意檔案是否抓完,迼成困擾。
lftp localhost:/pub/Iso> queue
lftp
localhost:/pub/Iso> jobs
[0] queue (
ftp://localhost
)
Queue is stopped.
lftp
localhost:/pub/Iso> queue get rettcd.iso
lftp localhost:/pub/Iso>
jobs
[0] queue (
ftp://localhost
)
Queue is stopped.
Commands
queued:
1. get rettcd.iso
lftp localhost:/pub/Iso> queue mirror
Linux/
lftp localhost:/pub/Iso> jobs
[0] queue (
ftp://localhost
)
Queue is
stopped.
Commands queued:
1. get rettcd.iso
2. mirror
Linux/
lftp localhost:/pub/Iso> queue start
lftp
localhost:/pub/Iso> jobs
[0] queue (
ftp://localhost
)
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 的用法, 至於有幾個沒介紹的, 就是搞不懂作什麼用的啦。不過, 真覺得 lftp
實在太強了。
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/59015/showart_2161602.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP