我试着做这个
#!/bin/bash
ftp "$HOST"$3"/"$2"/" <<EOD
#toggle Interactive mode
prompt off
lcd $5"/"$4
mget "$4"*
exit
EOD我得到以下错误
语法错误:文件的意外结束
当我把它改为或任何其他的可能性
ftp "$HOST"$3"/"$2"/" <<<EOD
#toggle Interactive mode
prompt off
lcd $5"/"$4
mget "$4"*
exit
EOD我得到了
./download.sh: line 31: 87621 Segmentation fault: 11 ftp "$HOST"$3"/"$2"/" <<< EOD
./download.sh: line 20: prompt: command not found
./download.sh: line 21: lcd: command not found
./download.sh: line 22: mget: command not found我不知道怎么解决这个问题。我该怎么做O_O
发布于 2014-06-24 10:40:36
在我的Mac上,分割错误是由脚本中的注释产生的。用尾随#删除行将使其工作。
发布于 2013-08-06 16:46:10
许多交互命令并不能很好地处理管道输入。也许可以试试http://www.columbia.edu/kermit/ftpscripts.html?
尽管如此,许多其他人似乎已经成功地做了你正在做的事情(例如http://www.unix.com/unix-advanced-expert-users/4189-automated-ftp.html ),所以也许你只是有一个引用问题?尝试将命令(ftp "$HOST"$3"/"$2"/")更改为cat,以查看shell是否正确地传递到这里-doc?
如果您最终需要提供密码:http://www.stratigery.com/scripting.ftp.html,这也可以帮助您了解情况。
https://stackoverflow.com/questions/18085297
复制相似问题