Linux
自動 FTP 腳本未找到源目錄
如何修改下面的腳本以包含源目錄,以便它知道在哪個位置檢索傳輸所需的文件?
我有一個 bash 腳本,用於自動將文件傳輸到遠端伺服器,每週發生一次。
這是腳本:
#!/bin/bash HOST=sftp.mydomain.com USER=user PASS=pass ftp -inv $HOST << EOF $USER $PASS cd /d D:\destination\directory put file1.gz put file2.gz put file3.gz bye EOF
文件 1-3 都在源/目錄中,所以我想將所有文件從源/目錄傳輸到上面指定的目標路徑。
但是,我相信因為腳本在源 VM 上執行,所以我不需要指定目錄,因為腳本可以簡單地從任何文件夾中提取它(我理解新手錯誤)。
或者:有沒有一種更簡單的方法可以將 ftp 用於整個目錄,而不是簡單地列出文件夾的全部內容?
要更改
ftp
程序將哪個目錄視為源,cd
預先或lcd
在其中:cd /source/directory ftp ...
ftp ... lcd /source/directory ...
lcd
(fromman ftp
)是local change directory
; 它會:更改本地電腦上的工作目錄。
這裡的“本地”是指您執行的系統
ftp
。要將目前本地目錄中的所有文件放到 ftp 中的目前遠端目錄中,請使用:
prompt mput *
FTP 命令在“
prompt
多個”操作期間禁用互動式提示,例如mget
或mput
。引用FTP 手冊頁(或查看您的本地文件man ftp
):在多個文件傳輸期間發生互動式提示,以允許使用者有選擇地檢索或儲存文件。