LFTP命令筆記


安裝

因為在OpenWrt命令行下scp傳輸文件很慢(只有2.5MB/s不到), 於是改用FTP下載. lftp是OpenWrt下的FTP客戶端軟件. 如果固件中未安裝的話, 需要自己安裝, 其依賴於兩個ipk, 需要安裝的ipk為

-rw-r--r--    1 root     root        424670 Feb 11 19:02 lftp_4.8.4-3_mipsel_24kc.ipk
-rw-r--r--    1 root     root         47636 Feb 11 19:05 libexpat_2.2.7-1_mipsel_24kc.ipk
-rw-r--r--    1 root     root        107228 Feb 11 19:05 libreadline8_8.0-1_mipsel_24kc.ipk

先安裝libexpat和libreadline8, 再安裝lftp.

root@Timecloud2:~# opkg install libexpat_2.2.7-1_mipsel_24kc.ipk 
Installing libexpat (2.2.7-1) to root...
Configuring libexpat.
root@Timecloud2:~# opkg install libreadline8_8.0-1_mipsel_24kc.ipk 
Installing libreadline8 (8.0-1) to root...
Configuring libreadline8.
root@Timecloud2:~# opkg install lftp_4.8.4-3_mipsel_24kc.ipk 
Installing lftp (4.8.4-3) to root...
Configuring lftp.

使用

登錄

# lftp 用戶名:密碼@ftp地址:端口
lftp username:password@127.0.0.1:21
lftp username@127.0.0.1
lftp 127.0.0.1
lftp Enter --> open 127.0.0.1 --> login  

中文亂碼

登錄后看到的都是中文亂碼(因為一般本地都是utf-8的編碼), 用 set 命令解決

set ftp:charset gbk (or gb2312, utf-8)   # 設置ftp端的編碼格式
set file:charset utf-8 (or gbk, gb2312)   # 設置本地編碼格式

set命令的技巧

(1)輸入set 查看已經設置好的命令
(2)set -a 查看所有可以設置的命令清晰網

瀏覽, 查找遠端文件

ls *.txt                  # 查找當前目錄下的所有txt文件
ls ./123/                 # 列出123目錄下所有文件
find . -name "*.txt"      # 遞歸查找站點上所有的txt文件
find ./xx -name "*.txt"   # 查找xx目錄下所有的txt文件

注意: ls第二次讀取的是本地緩存, 可以用 rels 代替 ls 或者 cache off / cache on 來開關緩存, cache flush清空本地緩存

瀏覽本地文件, 改變本地目錄

!ls /usr/local/bin/
lcd /home/123/web      # 設置本地存放目錄 默認為用戶home目錄

下載文件

get 123.txt               # 下載123.txt文件到 /home/123/web 中
get -c 123.txt            # 斷點續傳下載
mget *.txt                # 批量下載所有txt文件
mget -c *.txt             # 斷點續傳
mget -c ./123/aaa/*.txt   # 斷點續傳、批量下載ftp端aaa目錄下的所有txt文件

pget -c -n 10 file.dat
    # 以最多10個線程以允許斷點續傳的方式下載file.dat
    # 可以通過設置 set pget:default-n 5 的值而使用默認值。

mirror aaa/               # 下載aaa整個目錄

上傳文件

put 123.txt
mput *.txt
mirror -R aaa/          # 同下載

設置被動/非被動模式

set ftp:passive-mode 1      # 1 被動, 0非主動

多任務處理

Ctrl+z            # 將當前進行的任務移交后台處理
wait              # 將后台處理任務調至前台查看
jobs              # 查看后台進行的任務列表
kill all / job_no # 刪除所有任務 或 指定的任務

# 將任務加入任務列表
queue get 123.txt
queue put 234.txt
queue mirror aaa/ 

# 任務列表
queue 
jobs              # 查看后台任務列表
queue start       # 開始任務列表
queue stop        # 停止任務列表

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM