首頁  >  文章  >  運維  >  linux下登入ftp, lftp指令詳解

linux下登入ftp, lftp指令詳解

巴扎黑
巴扎黑原創
2017-09-04 14:16:1818343瀏覽

使用lftp 

1、登入ftp

代碼:

lftp 使用者名稱:密碼@ftp位址:傳送埠(預設21)

##用法

(1)lftp username:password@127.0.0.1:21 回車

(2)lftp username@127.0.0.1 回車    ##預設21連接埠回車後輸入密碼

(3)lftp 127.0.0.1 回車  ##回車後login 登入

(4)lftp 回車--> open 127.0.0.1 --> login 登入

#覺得自己很像孔乙己了,茴香豆的" Hayes"有幾種寫法阿! ~真暈阿~

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   ##斷點續傳、批次下載ftp端aaa目錄下的所有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,

對於同時開啟多個站台或同個月台不同目錄間切換。

以上是linux下登入ftp, lftp指令詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn