Linux 下ftp命令


1
、登錄ftp

代碼:
lftp
用戶名:密碼@ftp地址:傳送端口(默認21

用法
(1)lftp username:[email protected]:21
回車
(2)lftp [email protected]
回車     ##默認21端口回車後輸入密碼
(3)lftp 127.0.0.1
回車   ##回車後 login 登錄
(4)lftp
回車 --> open 127.0.0.1 --> login 登錄

感覺自己很象孔乙己了,茴香豆的""有幾種寫法阿!~真暈阿~

2
lftp中文亂碼問題
對於像我這樣的新手,登錄後看到的都是中文亂碼(因爲一般本地都是utf-8的編碼),怎麼半呢,用 set 命令來解決

set ftp:charset gbk(或者 gb2312 utf-8) ##設置ftp端的編碼格式
set file:charset utf-8 (...
同上) ##設置本地編碼格式

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


3
、查找ftp端文件

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

1: ls第二次讀取的是本地緩存,可以用 rels 代替 ls 或者catch off / catch on 來開關catch,catch flush清空本地catch
2: 瀏覽本地目錄的命令可用!ls, !ls /usr/local/bin/


4
、下載文件

下載文件之前要先設置好本地的目錄,用來存放下載的文件
lcd /home/123/web   ##
設置本地存放目錄默認爲 /home/usr

get 123.txt     ##
下載123.txt文件到 /home/123/web

get -c 123.txt ##
斷點續傳下載
mget *.txt     ##
批量下載所有txt文件
mget -c *.txt ##
斷點續傳
mget -c ./123/aaa/*.txt   ##
斷點續傳、批量下載ftpaaa目錄下的所有txt文件

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


mirror aaa/
##
aaa目錄整個的下載下來,子目錄也會自動複製本地自動建立目錄


5
、上傳文件

put 123.txt     ##同下載
mput *.txt     ##
同下載

mirror -R aaa/ ##
同下載


6
、設置被動/非被動模式

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 ##
停止任務列表


其他命令清晰網

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
計算遠端整個目錄佔用容量

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 功能一樣

renlist []
只顯示遠端的檔名

pwd -p
顯示目前遠端所在目錄
-p
連登入密碼也顯示

scache []
只打 scache 顯示目前所有的 session, 加上 session_no 可切換至其他的 session,
對於同時開啓多個站臺或同個站臺不同目錄間切換。

 

發佈了7 篇原創文章 · 獲贊 7 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章