【发布时间】:2019-08-19 19:28:43
【问题描述】:
我正在创建一个 bash 文件,它将每天下载文件,但文件名是动态的,它会根据日期生成文件,例如 '20190819.log' 我的代码如下:
export SSHPASS=$SFTP_PASS
DATE=`$DATE -d "-1 day" +"%Y%m%d"`
sshpass -e sftp -oBatchMode=no -b - $SFTP_USER@$SFTP_HOST<<-'EOF'
mget $DATE.log
EOF
但在 mget $DATE.log 行中,它将 $DATE 视为字符串。 需要帮助...提前致谢。
【问题讨论】:
-
不要引用
'EOF'。引号告诉 bash 不要扩展 here-doc 中的参数 -
@rici 那么我应该添加什么来代替 EOF 以使其正常工作?
-
EOF 没问题。只是丢掉引号。
-
@rici 很好,你可以添加答案以便我接受它......非常感谢