lftp 簡介
lftp是個功能強大的字符界面文檔傳輸工具,它包含以下功能:
- 支持ftp、ftps、http、https、hftp、fish等傳輸協議
- 支持FXP
- 支持代理
- 支持多線程傳輸
- 支持書簽
- 類似bash,提供后台命令、nohop模式、命令歷史、命令別名、命令補齊等進程管理功能
登錄 ftp服務器
使用以下命令登錄 ftp服務器:
lftp ftp://用戶名[:密碼]@服務器地址[:端口] #標准方式,推薦 lftp 用戶名[:密碼]@服務器地址[:端口] lftp 服務器地址 [-p 端口] -u 用戶名[,密碼] lftp 服務器地址[:端口] -u 用戶名[,密碼]
- 如果不指定端口,默認
21
- 如果不在命令中使用明文輸入密碼,連接時會詢問密碼(推薦)
可以使用“書簽”收藏服務器站點,在 lftp 中以下命令,為當前站點定義別名:
lftp >bookmark #顯示所有收藏
lftp >bookmark add 別名 #使用 別名
收藏當前站點
使用別名登錄 ftp服務器:
lftp 別名
也可以編輯 lftp 的配置文件 ~/.lftp/bookmarks
,格式如下:
別名 ftp://用戶名:密碼@服務器地址:端口
lftp 使用方法
大多數圖形界面的 ftp客戶端,都有兩欄窗口,一欄為本地目錄,一欄為遠程目錄。lftp 也采用這種方式工作,只不過沒有使用圖形界面直觀的顯示
命令
本地
遠程
顯示工作目錄
lpwd
pwd
切換目錄
lcd
cd
顯示文件列表
!ls
cls
!ls -l
ls
- 其中,
!
表示執行本地命令,lftp中沒有與 ls 對應的本地命令 lls, 所以要使用 !ls 顯示本地目錄文件
使用以上命令確認當前工作目錄的情況。以下命令用於從本地目錄上傳,或者從遠程目錄下載:
下載
上傳
單個文件
get
put
多個文件
mget
mput
多線程
pget
目錄
mirror
mirror -R
-
在 lftp 配置文件
~/.lftp/rc
中設置 pget 使用的線程數set pget:default-n 5
在遠程目錄中,可以使用以下命令操作文件
統計文件大小
du
移動、重命名
mv
刪除
rm
創建文件夾
mkdir
刪除文件夾
rmdir
使用 exit
命令退出 lftp
中文亂碼
大多數 windows 平台下的 ftp服務器 使用 GB2312 編碼,而 lftp 使用 UTF-8 編碼,使用 lftp 訪問這些服務器,中文顯示為亂碼。可以通過指定編碼來解決
lftp >set ftp:charset gbk #設置遠程編碼為gbk lftp >set file:charset utf8 #設置本地編碼(Linux系統默認使用 UTF-8,這一步通常可以省略)
也可以在 lftp 配置文件中 ~/.lftp/rc
設置默認值:
set ftp:charset gbk set file:charset utf8