FTP客戶端軟件介紹及使用linux
客戶端軟件: ftp,lftp,lftpget,wget,curl ftp -A ftpserver port -A 主動模式 –p 被動模式 lftp –u username ftpserver lftp username@ftpserver lftpget ftp://ftpserver/pub/file gftp:GUI centos5 最新版2.0.19 (11/30/2008),官網:https://www.gftp.org/ filezilla,FTP Rush,CuteFtp,FlashFXP,LeapFtp IE ftp://username:password@ftpserver面試
2.6.1 lftp軟件介紹及使用shell
Lftp客戶端工具(如今最好使用的客戶端軟件):lftp這個軟件相似於bash能夠實現一些和bash中tab鍵補全的,目錄文件顏色顯示。並且lftp登錄的時候直接不用輸入匿名密碼用戶。vim
一、在客戶端服務器下載lftpcentos
[11:23:41 root@a7 ~]#yum install lftp -y
二、連接FTP服務器及使用bash
[11:24:15 root@a7 ~]#lftp 10.0.0.8 lftp 10.0.0.8:~> ls drwxr-xr-x 2 0 0 20 Jul 08 02:59 pub lftp 10.0.0.8:/> ? #輸入 ? 可顯示全部支持的命令 !<shell-command> (commands) alias [<name> [<value>]] attach [PID] bookmark [SUBCMD] cache [SUBCMD] cat [-b] <files> cd <rdir> chmod [OPTS] mode file... close [-a] [re]cls [opts] [path/][pattern] debug [<level>|off] [-o <file>] du [options] <dirs> exit [<code>|bg] get [OPTS] <rfile> [-o <lfile>] glob [OPTS] <cmd> <args> help [<cmd>] history -w file|-r file|-c|-l [cnt] jobs [-v] [<job_no...>] kill all|<job_no> lcd <ldir> lftp [OPTS] <site> ln [-s] <file1> <file2> ls [<args>] mget [OPTS] <files> mirror [OPTS] [remote [local]] mkdir [-p] <dirs> module name [args] more <files> mput [OPTS] <files> mrm <files> mv <file1> <file2> [re]nlist [<args>] open [OPTS] <site> pget [OPTS] <rfile> [-o <lfile>] put [OPTS] <lfile> [-o <rfile>] pwd [-p] queue [OPTS] [<cmd>] quote <cmd> repeat [OPTS] [delay] [command] rm [-r] [-f] <files> rmdir [-f] <dirs> scache [<session_no>] set [OPT] [<var> [<val>]] site <site-cmd> source <file> torrent [-O <dir>] <file|URL>... user <user|URL> [<pass>] wait [<jobno>] zcat <files> zmore <files>
三、這個工具能夠直接以非交互方法來進行下載服務器
#如今回到FPT服務器A8主機建立一個LFTP的文件 [11:27:05 root@A8 pub]#touch LFTP [11:28:02 root@A8 pub]#ls f1.img LFTP #在回到A7客戶端經過非交互式方式進行下載 [11:26:47 root@a7 ~]#lftpget ftp://10.0.0.8/pub/LFTP #經過查看LFTP文件已經下載 [11:28:47 root@a7 ~]#ls 1.txt Desktop Downloads initial-setup-ks.cfg LFTP Pictures sadsad.sh Videos anaconda-ks.cfg Documents f1.img initinstall.sh Music Public Templates
四、使用非交互方式下載ftp的資源用wget命令也能夠下載。網絡
#回到FPT服務器A8主機建立一個WGET文件 [11:28:02 root@A8 pub]#touch wget [11:30:36 root@A8 pub]#ls wget wget #回到A7客戶端經過wget方式進行下載 [11:28:53 root@a7 ~]#wget ftp://10.0.0.8/pub/wget --2020-07-08 11:31:10-- ftp://10.0.0.8/pub/wget => ‘wget’ Connecting to 10.0.0.8:21... connected. ......省略...... #經過ls命令查看WGET文件已經下載 [11:31:10 root@a7 ~]#ls 1.txt Desktop Downloads initial-setup-ks.cfg LFTP Pictures sadsad.sh Videos anaconda-ks.cfg Documents f1.img initinstall.sh Music Public Templates wget
五、可是在有些場景下ftp是須要驗證登錄才行。這是指定登陸FTP服務端zhang這個用戶登錄session
lftp –u 用戶名 後面跟服務器ip (指定某個用戶登錄ftp)
範例:架構
[11:33:33 root@a7 ~]#lftp -u zhang 10.0.0.8 Password: #這裏輸入的是zhang這個linux用戶的登陸密碼 lftp zhang@10.0.0.8:~>
六、對指定用戶家目錄進行文件下載
固然他所在的目錄就是FTP服務端 zhang這個用戶的家目錄。如今我去FTP服務器zhang用戶的家目錄下建立一個zhang的文件
FTP服務端操做:
#回到FTP服務器並進入到zhang用戶的家目錄 [11:30:38 root@A8 pub]#cd /home/zhang/ #touch一個zhang.txt文件 [11:37:08 root@A8 zhang]#touch zhang.txt [11:37:12 root@A8 zhang]#ls zhang.txt
FTP客戶端操做:
#如今在FTP服務器上建好了zhang.txt文件以後咱們回到A7 客戶端進行查看這個文件已經出現 lftp zhang@10.0.0.8:~> ls -rw-r--r-- 1 0 0 0 Jul 08 03:37 zhang.txt
2.6.2 ftp軟件介紹及使用 一、禁止自動登陸選項
-i選項關閉ftp的交互信息。-n是禁止自動登陸,須要用戶手動的去輸入要登錄的用戶和密碼。這樣寫的好處是能夠寫一個自動下載的腳本
[11:41:31 root@a7 ~]#ftp -i -n 10.0.0.8 #使用-i -n參數後面跟FTP服務器IP Connected to 10.0.0.8 (10.0.0.8). 220 (vsFTPd 3.0.3) ftp> user zhang 47678276 #指定經過zhang這個用戶登陸 密碼爲47678276 331 Please specify the password. 230 Login successful. ftp> ls #經過ls命令查看會有zhang用戶家目錄的文件 227 Entering Passive Mode (10,0,0,8,31,18). 150 Here comes the directory listing. -rw-r--r-- 1 0 0 0 Jul 08 03:37 zhang.txt
二、mget命令的使用
Mget支持通配符。並且mget能夠支持下載多個文件。
FTP服務端操做:
#咱們先回到FTP服務端zhang用戶的家目錄下多建立幾個mget文件 [11:37:13 root@A8 zhang]#pwd /home/zhang [11:44:49 root@A8 zhang]#touch mget{1..4} [11:44:58 root@A8 zhang]#ls mget1 mget2 mget3 mget4 zhang.txt
FTP客戶端操做:
#再回到A7客戶端經過mget進行多個文件下載
[11:45:45 root@a7 ~]#ftp -i -n 10.0.0.8 #使用-i -n參數後面跟FTP服務器IP Connected to 10.0.0.8 (10.0.0.8). 220 (vsFTPd 3.0.3) ftp> user zhang 47678276 #指定經過zhang這個用戶登陸 密碼爲47678276 331 Please specify the password. 230 Login successful. ftp> ls #經過ls命令查看有多個mget文件 227 Entering Passive Mode (10,0,0,8,87,66). 150 Here comes the directory listing. -rw-r--r-- 1 0 0 0 Jul 08 03:44 mget1 -rw-r--r-- 1 0 0 0 Jul 08 03:44 mget2 -rw-r--r-- 1 0 0 0 Jul 08 03:44 mget3 -rw-r--r-- 1 0 0 0 Jul 08 03:44 mget4 -rw-r--r-- 1 0 0 0 Jul 08 03:37 zhang.txt 226 Directory send OK. ftp> mget * #使用mget進行下載、這裏的*表示全部由於支持通配符 local: mget1 remote: mget1 227 Entering Passive Mode (10,0,0,8,178,104). 150 Opening BINARY mode data connection for mget1 (0 bytes). 226 Transfer complete. local: mget2 remote: mget2 227 Entering Passive Mode (10,0,0,8,109,12). 150 Opening BINARY mode data connection for mget2 (0 bytes). 226 Transfer complete. local: mget3 remote: mget3 227 Entering Passive Mode (10,0,0,8,47,110). 150 Opening BINARY mode data connection for mget3 (0 bytes). 226 Transfer complete. local: mget4 remote: mget4 227 Entering Passive Mode (10,0,0,8,47,60). 150 Opening BINARY mode data connection for mget4 (0 bytes). 226 Transfer complete. local: zhang.txt remote: zhang.txt 227 Entering Passive Mode (10,0,0,8,20,2). 150 Opening BINARY mode data connection for zhang.txt (0 bytes). 226 Transfer complete. #而後在本地主機終端查看已經下載完成 [11:18:04 root@a7 ~]#ls mget* mget1 mget2 mget3 mget4
三、Put命令自動上傳
#一、在ftp 命令終端經過!ls查看本地文件 ftp> !ls 1.txt Desktop Downloads initial-setup-ks.cfg LFTP mget2 mget4 Pictures sadsad.sh Videos zhang.txt anaconda-ks.cfg Documents f1.img initinstall.sh mget1 mget3 Music Public Templates wget #二、先切換工做模式爲主動模式(默認下被動模式是不容許上傳的) ftp> passive Passive mode off. #三、put initinstall.sh 這是將本機的initinstall.sh文件上傳到ftp服務器上去 ftp> put initinstall.sh local: initinstall.sh remote: initinstall.sh 200 PORT command successful. Consider using PASV. 150 Ok to send data. 226 Transfer complete. 8340 bytes sent in 0.00152 secs (5497.69 Kbytes/sec) #四、經過ls查看initinstall.sh已經上傳過去 ftp> ls 200 PORT command successful. Consider using PASV. 150 Here comes the directory listing. -rw-r--r-- 1 1000 1000 8340 Jul 08 03:55 initinstall.sh 四、編寫自動化上傳下載的ftp腳本 是個腳本的意思是使用ftp -i選項就是自動登陸不須要交互。-n是禁止登錄。連接10.0.0.8這個ftp服務器。而後登錄使用mget *命令下載服務器上全部的文件。再經過put命令上傳anaconda-ks.cfg這個文件而後退出
客戶端操做:
一、編寫腳本: [12:03:15 root@a7 ~]#vim ftp.sh #!/bin/bash ftp -i -n 10.0.0.8 <<! #登陸FTP服務器 user zhang 47678276 #使用zhang用戶登陸 mget * #使用mget命令 *下載全部文件 put anaconda-ks.cfg #經過put 上傳anaconda-ks.cfg 至fpt服務器 exit #退出 ! 二、執行該腳本以前如今本地經過ls命令查看當前文件現狀 [12:08:17 root@a7 ~]#ls anaconda-ks.cfg Desktop Documents Downloads ftp.sh initial-setup-ks.cfg initinstall.sh Music Pictures Public sadsad.sh Templates Videos 三、執行ftp.sh腳本 [12:08:18 root@a7 ~]#bash ftp.sh 四、跑完腳本以後再經過ls查看就會多了zhang.txt和mget一、mget二、mget三、mget4等文件 [12:08:51 root@a7 ~]#ls anaconda-ks.cfg Documents ftp.sh initinstall.sh mget2 mget4 Pictures sadsad.sh Videos Desktop Downloads initial-setup-ks.cfg mget1 mget3 Music Public Templates zhang.txt
FTP服務端操做:
一、來到FTP服務端得zhang用戶家目錄下經過ls查看就會多一個anaconda-ks.cfg文件 [11:44:59 root@A8 zhang]#ls anaconda-ks.cfg mget1 mget2 mget3 mget4 zhang.txt
※部分文章來源於網絡,若有侵權請聯繫刪除;更多文章和資料|點擊後方文字直達 ↓↓↓ 100GPython自學資料包 阿里雲K8s實戰手冊 [阿里雲CDN排坑指南]CDN ECS運維指南 DevOps實踐手冊 Hadoop大數據實戰手冊 Knative雲原生應用開發指南 OSS 運維實戰手冊 雲原生架構白皮書 Zabbix企業級分佈式監控系統源碼文檔 10G大廠面試題戳領