我实际上试图从另一台服务器获得以当前日期开始的所有文件。然而,*
不工作在SFTP,所以我不知道我怎么能做…
这是我到目前为止完成的批处理:
#!/bin/sh
today=$(date +%Y%m%d)
lftp<<END_SCRIPT
open sftp://name@server
get $today*
bye
END_SCRIPT
@Martin Prikryl
谢谢你,它现在工作正常。在你回答之前,我搜索了一下,我发现了这个(效率低很多^^):
today=$(date +%Y%m%d)
var=`echo `echo ls -1 | sftp name@domain:dir1/subdir` | sed -n 's/ /n/gp'|sed -n '/^$today/p'`
lftp<<END_SCRIPT
open sftp://name@server
get $var
bye
END_SCRIPT
用mget
代替get
见https://lftp.yar.ru/lftp-man.html
得到
…不扩展通配符,使用mget
。
… mget
…获取带有展开通配符的选定文件。