使用單個命令將文件發送到FTP

我們已經了解瞭如何通過終端連接到FTP服務器並使用它(或其內容),即不使用圖形應用程序。

這次我給您帶來加分或增值...讓我解釋一下。

幾年前我離開了他們 一個用於備份的bash腳本 (保存)來自服務器的數據。 該腳本複制了一系列文件夾(例如/ etc /),導出的數據庫等...,並使用密碼將其壓縮為.RAR或.7z文件(我目前使用7z),該腳本唯一缺少的就是能夠上傳然後將該壓縮文件傳輸到某個FTP服務器,這樣服務器中的保存內容將被複製到另一個位置。

這些天來,我再次使用該腳本來對其進行一些優化,改進,並且很明顯地發現了我向您提到的腳本的需要,將壓縮的存檔上傳到外部FTP。

如何通過單個命令上傳到FTP?

我需要的是通過一個命令來使用用戶名和密碼連接到FTP,很好; 將文件上傳到特定文件夾。

允許我連接到FTP,輸入用戶名和密碼並上傳文件的終端應用程序很多,但是…允許我在一行中完成所有操作,並且已經指定了所有參數……。 嘿那裡的問題。

經過4或5的審查之後…我以為是! ...但是它存在 捲曲

使用curl上傳到FTP

有了curl,我可以做很多事情,也許我可以做我想做的……就是這樣!

使用-u參數,我可以指定用戶名和密碼,使用-T參數,我可以告訴它上傳文件,最後告訴它要將文件上傳到哪個FTP和哪個文件夾,最後,我只是輸入完整路徑,或多或少都像這樣:

curl -u usuario:password -T archivo-backup.7z ftp://192.168.128.2/SERVER_BACKUPS/

這是通過用戶連接到FTP 192.168.128.2 用戶 和密碼 密碼 並上傳到文件夾 服務器備份 該文件稱為 文件備份7z

準備好了!

簡單吧? ...

當然,這對我們以及單個命令都可能有用,但是,使用它的最佳方法是使用腳本,例如...我之前提到的腳本。

那提到的腳本呢?

我正在對腳本進行改進,尤其是結合了用戶的一些請求或建議。

  • 我想做的第一件事就是我剛剛向您解釋的一個命令,該命令可以將保存文件上傳到FTP。
  • 用戶推薦我的另一件事是在備份準備好後發送電子郵件,為此我可以使用 發郵件外部腳本,我最好使用sendmail。 使用sendmail的細節是,您可以使用自己的GMail帳戶(或任何其他帳戶)發送加密,SSL和其他內容的電子郵件。
  • 另外,用戶建議,作為一種更加動態的通知形式,IM還可以使用GTalk的XMPP或Hotmail的消息發送消息(實時或類似的消息,我什至不知道它叫什麼)。 我將首先嘗試使用GTalk進行此操作,因為對於Hotmail,我將不得不在某個地方記住或支持自己才能創建Hotmail帳戶,因為Microsoft擁有如此多的零錢,不知道它是什麼樣子。
  • 後者的另一個變體是使用Facebook或Twitter發送的通知或消息。 對於Twitter,您可以使用 特威奇 而對於Facebook,您可以使用 命令行。 這兩個應用程序都允許我從終端與這些社交網絡進行交互。
  • 我也在考慮檢查導出的sql的完整性,但這已經需要更多時間了:)

FTP服務器

結束!

好吧,僅此而已...現在,我正在使用我在Bash中製作的一些腳本來優化和改進它們,希望發布新聞不會花我太多時間long

問候


本文內容遵循我們的原則 編輯倫理。 要報告錯誤,請單擊 這裡.

8條評論,留下您的評論

發表您的評論

您的電子郵件地址將不會被發表。

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   巴納拉斯塔 他說:

    很棒的項目
    我將非常感興趣地關注它。
    -如果服務器已關閉或無法交付,是否有任何通知@?

    非常高興閱讀終端機/控制台愛好者的文章。

    1沙魯2

    1.    KZKG ^ Gaara 他說:

      我的榮幸是🙂

      好主意,要驗證FTP服務器是否在線,如果不是,請發送電子郵件...我將考慮到它^ _ ^

  2.   摩西·塞拉諾(Moses Serrano) 他說:

    我調整了備份腳本並調整了一個項目,使您可以將最終文件上傳到Dropbox(https://github.com/andreafabrizi/Dropbox-Uploader),最後通過sendmail發送電子郵件。

  3.   獵人 他說:

    Gaara您必須為此嘗試正確的工具:lftp

    它甚至支持鏡像,從ftp同步存儲庫是無價的。

    http://www.cyberciti.biz/faq/lftp-mirror-example/

  4.   豪爾赫 他說:

    非常有趣,這是該系統的優點,您可以通過多種方式獲得相同的結果; 我向您展示了我設法將文件上傳到ftp服務器的方法,雖然有點粗魯,但仍然可以使用:

    {
    回顯用戶用戶密碼
    迴聲倉
    迴聲提示
    回顯cd /目錄/從/服務器/ ftp
    迴聲放置文件
    迴聲關閉
    再見
    } | ftp -n服務器.ftp

    1.    KZKG ^ Gaara 他說:

      OOOHHH有趣,我不知道該怎麼辦😀
      謝謝!

  5.   薩菲羅斯 他說:

    其他方式,例如與wput:

    寫入file_to_upload ftp://用戶:PASS@123.123.123.123:21

    或對於那些喜歡使用舊版telnet簡化腳本的用戶:

    ftp -n server_ip << EOF
    匿名用戶 測試@test.cu
    發送FILE.txt
    出口
    EOF

  6.   澤維爾 他說:

    您好,我是Linux的初學者,我不了解計算機科學-僅在用戶級別-或編程,或類似的東西,對此我幾乎一無所知。 我正在閱讀本文,並在第二段末尾讀到“位置”一詞; 這個詞被誤用了,您的意思是:位置,位置,位置,位置。 RAE所說的“位置”一詞意味著其他含義“ http://dle.rae.es/?id=NXeOXqS”。