2014-02-13 79 views
0

我已經添加了這段代碼來將文件上傳到遠程FTP。 現在我得到一個錯誤:「58行語法錯誤:意外的文件結尾」 單獨它的工作原理EOF意外的文件結尾

#!/bin/bash  
    for fileupload in *.zip; do 
    hostname="myhost" 
    username="myuser" 
    password="mypwd" 
    ftp -vn $hostname <<ENDFTPCOMMAND 
    quote USER $username 
    quote PASS $password 
    binary 
    put $fileupload 
    quit 
    ENDFTPCOMMAND 
    cd /home/user1/DATA/ 
    for fullname in DATAFILES/*.zip; do 
    filename="${fullname##*/}" 
    echo $filename 
    line 57 done 
+0

您可以張貼所有的腳本,可能是問題出現在不貼線? – developer

+1

爲什麼在用戶和密碼前面有「報價」?我認爲你應該在「$ fileupload」周圍放雙引號 –

+0

@linuxcdeveloper我已經更新了類似的小實線代碼 – pasaico

回答

1

for循環沒有正常結束。 done需要以分號開頭,或單獨一行。

for fullname in DATAFILES/*.zip; do 
filename="${fullname##*/}" 
echo $filename 
line 57 
done 

(在一個側面說明,什麼是line 57?)

+0

謝謝 丟失是在ENDFTPCOMMAND 之後完成的,「第57行」是完成的行號 – pasaico