我一直试图找到一种方法来使用只有特定文件扩展名的mget。
我使用了下面的命令(如果我离开*.csv,它运行得很好)
lftp -e "set xfer:clobber true;mget $SOURCE_DIR*.{csv,txt,xls,xlsx,zip,rar};exit" -u $SOURCE_USERNAME,$SOURCE_PASSWORD $SOURCE_SERVER || exit 0
但是没有运气,我收到了dir/*.{csv,txt,xls,xlsx,zip,rar} no files found的消息
试图添加括号
lftp -e "set xfer:clobber true;mget $SOURCE_DIR(*.{csv,txt,xls,xlsx,zip,rar});exit" -u $SOURCE_USERNAME,$SOURCE_PASSWORD $SOURCE_SERVER || exit 0
也没有运气
$SOURCE_DIR在末尾已经有了一个斜线/
我试图在本地测试lftp,但我在Vagrant上打开端口时遇到了问题,因此出现了一个问题。
发布于 2016-04-19 10:08:14
我设法连接到一个FTP,而不需要转发端口。
结果(我知道这似乎很明显),您必须为每个扩展指定通配符的完整路径。
mget $SOURCE_DIR*.csv $SOURCE_DIR*.txt
被空间分隔
另外,如果没有找到一个(或多个)扩展名,消息"*.txt no file“将陷入标准错误,这导致我无法继续执行完整的脚本。
https://stackoverflow.com/questions/36711596
复制相似问题