Linux

使用命令行通過 FTP 發送文件,無需互動模式

  • June 29, 2017

我想使用命令行(在 Linux 上)通過 FTP 自動發送文件。我的意思是我想直接從命令行發送一個文件,沒有任何互動模式。我想從命令行傳遞所有參數(它在本地網路上出於私人目的,所以在命令行上有密碼對我來說很好)。我知道我想要發送什麼文件,以及我想要儲存它的位置。到目前為止,我的 google-fu 失敗了,因為所有關於“命令行 ftp”的指南實際上都在進入互動式文本界面,這不是我想要的。

那麼,如果我不想進入互動模式並想在命令行上傳遞所有參數,如何通過 FTP 發送文件呢?

如果可能,安裝ncftp和使用腳本上傳ncftpputncftpget下載文件的命令。

lftp還有-c(從命令行參數-f讀取 FTP 命令)和(從文本文件讀取 FTP 命令)選項,可以幫助您自動執行 FTP 會話。

如果您確實必須使用古老的ftp命令,則可以使用expect(或,autoexpect)。

lftp?

$ yum info lftp
Loaded plugins: priorities, ps
Available Packages
Name        : lftp
Arch        : i686
Version     : 4.0.9
Release     : 1.el6
Size        : 735 k
Repo        : base
Summary     : A sophisticated file transfer program
URL         : http://lftp.yar.ru/
License     : GPLv3+
Description : LFTP is a sophisticated ftp/http file transfer program. Like bash, it has job
           : control and uses the readline library for input. It has bookmarks, built-in
           : mirroring, and can transfer several files in parallel. It is designed with
           : reliability in mind.

手冊頁在這裡: http: //lftp.yar.ru/lftp-man.html

引用自:https://serverfault.com/questions/372696