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



当前代码

#!/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

目标

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

收到错误

open:*.csv:名称或服务未知

评论

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

感谢您提供的任何反馈,说明为什么我的代码不会下载文件,以及我可能从手册页中误解了什么。

它应该像:

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

相关内容

  • 没有找到相关文章

最新更新