看板 Knuckles_note
作者 標題 [Linux] 用 scp 或 ftp 讓兩台server互傳資料
時間 2012年06月27日 Wed. PM 05:52:12
○ scp
來源主機可以使用 SSH 登入的話,用 scp
參考: http://linux.vbird.org/linux_server/0310telnetssh.php#scp
例如要用 knuckles 這帳號登入 disp.cc
然後複製 /home/knuckles/test.gz 檔案,到目前這台 server 的 /home/knuckles2/
# scp knuckles@disp.cc:/home/knuckles/test.gz /home/knuckles2/
要抓整個目錄(含子目錄),且保持檔案權限設定
# scp -pr knuckles@disp.cc:/home/knuckles/* /home/knuckles2/
-p 含檔案權限、時間,不含擁有者與群組
○ ftp
安裝 ftp client
# yum install ftp
來源主機只能用 ftp 登入,要在指令模式下使用 ftp 抓檔案的話
先 cd 進入想要存檔案的目錄
然後使用
# ftp xxx.xxx.xxx.xxx
輸入帳號密碼登入
使用 help 列出能用的指令
ftp> help
Commands may be abbreviated. Commands are:
! debug mdir sendport site
$ dir mget put size
account disconnect mkdir pwd status
append exit mls quit struct
ascii form mode quote system
bell get modtime recv sunique
binary glob mput reget tenex
bye hash newer rstatus tick
case help nmap rhelp trace
cd idle nlist rename type
cdup image ntrans reset user
chmod lcd open restart umask
close ls prompt rmdir verbose
cr macdef passive runique ?
delete mdelete proxy send
! debug mdir sendport site
$ dir mget put size
account disconnect mkdir pwd status
append exit mls quit struct
ascii form mode quote system
bell get modtime recv sunique
binary glob mput reget tenex
bye hash newer rstatus tick
case help nmap rhelp trace
cd idle nlist rename type
cdup image ntrans reset user
chmod lcd open restart umask
close ls prompt rmdir verbose
cr macdef passive runique ?
delete mdelete proxy send
使用 ls 查看目錄下的東西
使用 cd 進入目錄
要抓多個檔案的話使用
ftp> mget *
* 為萬用字元,代表 0~∞ 個字元
? 代表一個字元
可以用 [a-z]* 抓檔名為小寫 a-z 開頭的檔案
用 ftp 似乎一次只能抓到2萬個檔案,所以檔案數太多的話可以依字母開頭分批抓,例如
ftp> mget [0-9]*
ftp> mget [a-z]*
ftp> mget [A-Z]*
可以用 ls [a-z]* 後,按一下ctrl+c停止列表,然後檔案數有多少了
ftp> ls [a-z]*
226 Output truncated to 20000 matches
若顯示20000的話代表沒列完,要減少範圍再試一次
不想每個檔案都要確認的話使用 prompt 關閉
ftp> prompt
Interactive mode off.
使用 trace 可顯示傳輸進度
ftp> trace
Packet tracing on.
--
※ 作者: Knuckles 時間: 2012-06-27 17:52:12
※ 編輯: Knuckles 時間: 2013-02-10 22:20:54
※ 看板: KnucklesNote 文章推薦值: 0 目前人氣: 0 累積人氣: 4735
回列表(←)
分享