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% 正确工作。

相关内容