在 bash 脚本中执行 mirror 和 mget lftp 命令

Execute mirror and mget lftp commands in bash script

当前代码

#!/bin/bash
SFTP_SERVER="sftp.url.com:/csv/test/10"
SFTP_USER="user"
SFTP_PWD="pwd"

## not sure if this line is needed given I specify the local directory
# in the next block of code.
cd /mnt/c/Users/user/Documents/new_directory    
lftp sftp://$SFTP_USER:$SFTP_PWD@$SFTP_SERVER
lftp -e mget *.csv mirror sftp.user.com:/csv/test/10 /mnt/c/Users/user/Documents/new_directory

Objective

下载所有 csv 文件并将我的本地目录文件夹镜像到远程服务器,因此当代码再次为 运行 时,它不会下载第二个文件。

收到错误

open: *.csv: Name or service not known

评论

根据我对 lftp 手册页的理解,如果我使用 [=15],我应该能够通过使用 mget 而不是标准 get 来获取所有通配符文件=] 使用外部命令。我手动 运行 mget 并且可以毫无问题地下载文件,但它似乎不支持脚本中的 *.csv

感谢您就我的代码为何无法下载文件以及我可能从手册页中误解了什么而提供的任何反馈。

应该是这样的:

lftp sftp://$SFTP_USER:$SFTP_PWD@$SFTP_SERVER -e "mget *.csv; bye"