Unix Shell SFTP自动下载文件

问题描述:

我是Unix脚本中的新成员,下面是我的脚本,执行此文件时出现此错误: /root/bin/autodownload.sh:第20行:语法错误:文件意外结束Unix Shell SFTP自动下载文件

while [ 1 ] 
do 
     sftp -o IdentityFile=/root/.ssh/ixxx [email protected] << EOF  
     cd outbound 
     lcd /home/xxx/  
     get Abc* 
     bye 
     EOF 
     sleep 60 
done 
+0

将'EOF'放在行首 - 如果它不在行首,它不会被解释为here文档的结尾。 – Petesh

+0

或使用'和键)有4个空格的二进制缩进(比如说注释或其他原因)。祝你好运。 – shellter

+0

@shellter' Petesh

试试这个;

您需要在EOF之前删除空格。 EOF应该在左边距上:

#!/bin/bash 
while [ 1 ] 
do 
     sftp [email protected] << EOF 
     cd outbound 
     lcd /home/mdogru/  
     get Abc* 
     bye 
EOF 
     sleep 60 

done