Bash 腳本僅 ftp 目前目錄中 gz 類型的文件

Bash 腳本僅 ftp 目前目錄中 gz 類型的文件

我有一個 bash 腳本,它 cd 到正確的目錄,然後使用 mput 命令將該目錄中的所有檔案 ftp 到遠端伺服器,如下所示:

for from_dir in $DATE_LIST 
do
    cd ${FILE_LANDING_DIR}/deltas/${from_dir}
    ftp_files
done

ftp_files () {
    ftp -inv $HOST <<-EOF > $LOG_DIR/tempftplog
    user $USER $PASS 
    cd ${ID_LANDING_DIR}
    mput *
    bye 
    EOF
} 

.gz我嘗試通過將行更改為 來更改 ftp_files 函數以僅 ftp 該目錄中的文件,mput *但這不起作用mput *.gz

有人可以告訴我如何在 ftp 命令中執行此操作嗎?

答案1

不起作用mput *.gz?如果沒有,請先嘗試 ftpglob指令。

http://man.cx/ftp

答案2

執行目錄搜尋並將其透過管道傳輸到 mput 怎麼樣?

ls *.gz | mput

我現在無法測試這個,因為我不在 Linux 機器上,所以可能需要對其進行調整才能使其 100% 正確工作。

相關內容