tft每日頭條

 > 生活

 > 如何方便快速的ftp文件上傳

如何方便快速的ftp文件上傳

生活 更新时间:2024-07-18 22:07:11

如何方便快速的ftp文件上傳(如何用ftp實現一鍵上傳)1

簡介

ftp 是 Internet 标準文件傳輸協議的用戶界面, 它允許用戶與遠程網絡站點之間傳輸文件

使用 ftp 客戶端上傳文件,需要一個 ftp 服務器,本文主要介紹 ftp 客戶端上傳相關的命令,默認已經安裝好FTP服務器了

FTP服務器的搭建在 Linux下如何部署FTP服務器 中有詳細的介紹,感興趣的可以去看看

安裝

使用下面的命令安裝 FTP 客戶端

yum install ftp

常用選項

進入 ftp 命令行之後,就可以執行上傳、下載相關的命令,由于命令比較多,下面隻列出一些常用的命令以及一些常用選項

命令

說明

put

本地文件上傳到FTP服務器

mput

本地文件批量上傳到FTP服務器

get

FTP服務器文件下載到本地

mget

FTP服務器批量下載到本地

delete

删除FTP服務器上的文件

mdelete

批量删除FTP服務器上的文件

ls

FTP服務器當前目錄中的文件詳細信息

lcd

更換本地工作目錄

cd

FTP服務器上更換目錄

cdup

FTP服務器當前目錄返回到上一層目錄

pwd

當前位于FTP服務器上哪個目錄

nlist

列出FTP服務器指定目錄中的文件名列表

binary

設置傳輸類型為二進制傳輸

open

在指定的IP和端口上,與FTP建立一個連接

bye

終止與FTP服務器的會話,退出FTP客戶端

選項

說明

-i

文件批量傳輸時,關閉交互提示

-n

客戶端連接上FTP服務器時,禁止自動登錄

-v

打印FTP服務器返回的所有消息

!

本地機器上執行命令

上傳單個文件

上傳單個文件主要使用 put 命令,它的格式是 put local-file [remote-file] , 其中 local-file 表示本地文件,默認是本地當前目錄,remote-file 是FTP服務器上的文件,如果不指定的話,上傳到服務器之後,默認跟本地文件名同名

下面是把本地 /root/ftptest/haa.txt 上傳到服務器的 /files 目錄的步驟

如何方便快速的ftp文件上傳(如何用ftp實現一鍵上傳)2

  • 步驟說明

1、輸入帳号密碼,登錄FTP服務器 2、'!pwd' 命令表示本地機器當前目錄 3、'!ls' 命令表示列出本地當前目錄中的文件 4、'pwd' 命令是當前處于FTP服務器的哪個目錄,這個目錄是相對于用戶鎖定目錄而言的,關于鎖定目錄請參考上一篇文章 'cd files' 命令是服務器當前目錄( '/' ) 切換到 '/files' 目錄 'ls' 是列出FTP服務器當前目錄中的文件,從結果可以看出,服務器當前目錄中沒有任何文件 5、'binary' 以二進制模式上傳,一般在上傳之前設置下即可 6、'put haa.txt' 把本地當前目錄中的 'haa.txt' 上傳到服務器的 '/files' 目錄中,上傳成功之後,會有 'Transfer complete' 的提示 如果把本地其他目錄的文件上傳到服務器的話,需要指定上傳到服務器的文件名, 比如:本地存在 /root/ftptest/test/test.txt 文件 可以使用 'put ./test/test.txt test.txt' 命令将它上傳到服務器的 '/files' 目錄 7、上傳完成之後,執行 'nlist *' 命令查看下服務器當前目錄中的文件列表,此處是用來确認是否上傳成功,從結果可以看出,服務器當前目錄的文件列表中有 'haa.txt' 文件,所以此次上傳成功 8、操作完成之後,執行 'bye' 命令斷開連接并退出FTP客戶端

批量上傳

批量上傳主要使用 mput 命令,後面可以接文件名列表,也可以接含有通配符的文件名,命令能正确獲取通配符指代的文件,文件名之間以空格隔開

下面是将 /root/ftptest 目錄下的 haa.txt、hab.txt、ta.log、tb.log 文件上傳到服務器的 /files 目錄的步驟

如何方便快速的ftp文件上傳(如何用ftp實現一鍵上傳)3

上圖省略了FTP登錄輸入帳号密碼的步驟,其中第一條執行的命令是 ftp -i -v 192.168.70.20 48888

選項 -i 表示關閉交互提示,在批量上傳的時候很有用, mput 批量上傳的時候,會逐個文件調用 put上傳命令進行上傳, 如果沒有關閉交互提示,每次上傳文件的時候都需要人為輸入 y 字符确認,當關閉了交互提示後,就能不間斷的上傳,直到所有的文件上傳成功

  • 步驟說明

1、本地當前所處目錄 2、服務器當前所處目錄,然後進入 '/files' 目錄 3、以二進制模式上傳 4、批量上傳文件,'mput' 是批量上傳的命令,後面可以接 文件名或者通配符組成的文件名,它們之間用空格隔開,這裡的意思是批量上傳 'haa.txt、hab.txt、ta.log、tb.log ' 執行 'mput haa.txt hab.txt *.log' 命令之後,會逐個文件的上傳到服務器 每個文件都會有上傳結果信息返回,從圖中的結果可以看出,總共上傳了 'haa.txt hab.txt ta.log tb.log' 四個文件,全部都上傳成功 5、上傳操作之後,通過 'nlist *' 命令确認上傳結果是成功的 6、退出客戶端

一鍵上傳

每次上傳文件都需要輸入一些重複的 FTP 命令其實是比較繁瑣的操作,可以将這些重複又繁瑣的命令合并到一個腳本中,變成一個一鍵上傳的 shell 腳本,具體的内容如下:

#!/bin/sh #FTP用戶名 FTP_USER=mytest #FTP密碼 FTP_PAWD=12345678 #FTP服務器IP FTP_IP=192.168.70.20 #FTP服務器偵聽端口(命令端口) FTP_PORT=48888 #文件上傳到FTP服務器的哪個目錄 FTP_PATH=files #本地對當前目錄 LOCAL_PATH=`pwd` #傳入參數校驗 if [ $# != 1 ]; then echo "param count error..please input file" exit 1 fi echo "begin ftp $1 ..." #關閉交互提示、禁止自動登錄 ftp -v -i -n<<! #與指定IP和端口的FTP服務器建立連接 open ${FTP_IP} ${FTP_PORT} #驗證FTP用戶和密碼 user ${FTP_USER} ${FTP_PAWD} #以二進制模式傳輸文件 binary #服務器目錄切換到指定目錄 cd ${FTP_PATH} #切換本地目錄 lcd ${LOCAL_PATH} #上傳文件 $1 表示執行腳本時傳入的文件名 put $1 #斷開連接,退出FTP客戶端 bye !

腳本中有詳細的注釋,就不再做額外的說明了,此腳本隻提供了一個基礎的一鍵上傳的模版,而且一次隻能上傳一個文件,大家可以根據自身的需求去擴充或者調整

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved