對(duì)于一個(gè)經(jīng)常接觸電腦的人來說,F(xiàn)TP無形中出現(xiàn)在我們生活的各個(gè)角落。日常生活中的文件上傳和下載很多時(shí)候就是依靠FTP去實(shí)現(xiàn)的。
專業(yè)的說,F(xiàn)TP 是File Transfer Protocol(文件傳輸協(xié)議)的英文簡(jiǎn)稱,而中文簡(jiǎn)稱為“文傳協(xié)議”。用于Internet上的控制文件的雙向傳輸。同時(shí),它也是一個(gè)應(yīng)用程序(Application)。基于不同的操作系統(tǒng)有不同的FTP應(yīng)用程序,而所有這些應(yīng)用程序都遵守同一種協(xié)議以傳輸文件。在FTP的使用當(dāng)中,用戶經(jīng)常遇到兩個(gè)概念:"下載"(Download)和"上傳"(Upload)。"下載"文件就是從遠(yuǎn)程主機(jī)拷貝文件至自己的計(jì)算機(jī)上;"上傳"文件就是將文件從自己的計(jì)算機(jī)中拷貝至遠(yuǎn)程主機(jī)上。用Internet語言來說,用戶可通過客戶機(jī)程序向(從)遠(yuǎn)程主機(jī)上傳(下載)文件。
無論是Window還是Linux,F(xiàn)TP都有其發(fā)揮的作用,在windows我們可能可以通過可視化的界面去操作ftp。但是在純命令行的Linux下,我們要如何操作。
1、在安裝好的Linux,當(dāng)我輸入ftp的時(shí)候,提示我沒有找到ftp的指令,在網(wǎng)上查看,說是要去安裝一個(gè)vsftpd。先將權(quán)限設(shè)置為root,或者指令前加sudo。指令如下:
yum install vsftpd
或者
sudo yum install vsftpd
2、然后安裝好后,輸入/sbin/service vsftpd restart去重啟vsftpd.
3、然后安裝ftp。
yum install vsftpd
4、然后輸入ftp后,盡可以進(jìn)入ftp的控制界面。
5、現(xiàn)在如果你想登陸一個(gè)FTP,就可以通過open指令去進(jìn)入該FTP。
例如:open 127.0.0.0
如果FTP設(shè)置權(quán)限,可能在輸入后需要輸入用戶名和密碼。這樣就可以直接進(jìn)入FTP去操作了。
操作指令
1、FTP的操作指令其實(shí)和Linux很相似,如下:
1)ls 列出遠(yuǎn)程機(jī)的當(dāng)前目錄
2)cd 在遠(yuǎn)程機(jī)上改變工作目錄
3)lcd 在本地機(jī)上改變工作目錄
4)ascii 設(shè)置文件傳輸方式為ASCII模式
5)binary 設(shè)置文件傳輸方式為二進(jìn)制模式
6)close 終止當(dāng)前的ftp會(huì)話
7)hash 每次傳輸完數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)后就顯示一個(gè)#號(hào)
8)get(mget) 從遠(yuǎn)程機(jī)傳送指定文件到本地機(jī)
9)put(mput) 從本地機(jī)傳送指定文件到遠(yuǎn)程機(jī)
10)open 連接遠(yuǎn)程ftp站點(diǎn)
11)exit退出ftp。
2、例如:下載文件
下載文件之前要先設(shè)置好本地的目錄,用來存放下載的文件
lcd /home/123/web ##設(shè)置本地存放目錄 默認(rèn)為 /home/usr
get 123.txt ##下載123.txt文件到 /home/123/web 中
get -c 123.txt ##斷點(diǎn)續(xù)傳下載
mget *.txt ##批量下載所有txt文件
mget -c *.txt ##斷點(diǎn)續(xù)傳
mget -c ./123/aaa/*.txt ##斷點(diǎn)續(xù)傳、批量下載ftp端aaa目錄下的所有txt文件
pget -c -n 10 file.dat
##以最多10個(gè)線程以允許斷點(diǎn)續(xù)傳的方式下載file.dat
##可以通過設(shè)置 set pget:default-n 5 的值而使用默認(rèn)值。
mirror aaa/
##將aaa目錄整個(gè)的下載下來,子目錄也會(huì)自動(dòng)復(fù)制 本地自動(dòng)建立目錄
3、例如:上傳文件
put 123.txt ##同下載
mput *.txt ##同下載
mirror -R aaa/ ##同下載
4、例如:查看ftp端文件
ls *.txt ##查找當(dāng)前目錄下的所有txt文件
ls ./123/ ##列出123目錄下所有文件
find . -name "*.txt" ##遞歸查找站點(diǎn)上所有的txt文件
find ./xx -name "*.txt" ##查找xx目錄下所有的txt文件
附1: ls第二次讀取的是本地緩存,可以用 rels 代替 ls 或者catch off / catch on 來開關(guān)catch,catch flush清空本地catch
附2: 瀏覽本地目錄的命令可用!ls, 如 !ls /usr/local/bin/
注意事項(xiàng):安裝FTP的時(shí)候,權(quán)限設(shè)置為root。