[問題] shell用ftp遠端get檔案問題

看板LinuxDev作者 (凝晞)時間11年前 (2014/03/24 17:27), 編輯推噓2(201)
留言3則, 2人參與, 最新討論串1/1
shell新手請多多指教 我的程式碼如下 filename='readline.txt' exec < $filename while read line do echo $line mkdir $line cd /test1/$line ftp -i -n 192.168.139.85 << TMP user username code ascii prompt cd test_a/$1 mget *.txt close bye TMP echo "FTP Stop!..." done 主要的功用是read txt檔中的目錄名稱後, 到遠端的ftp至該目錄抓檔案回來 但我在執行時,出現這個錯誤訊息 0403-057 Syntax error at line 11 : `<' is not matched. 好像是說 < 沒有配對到?? 但我若是去掉迴圈,直接給目錄名去open FTP 又是可以成功的 請問有沒有人能幫我看是什麼問題? 或是該怎麼改寫比較好~ 還是說迴圈裡面不能open ftp呢?? 感謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.243.195.234

03/24 20:29, , 1F
試試拿掉exec那行,直接把< $filename加在done後面, 不確定
03/24 20:29, 1F

03/26 23:42, , 2F
在bye下面的TMP前面不要有空格
03/26 23:42, 2F

03/26 23:44, , 3F
否則在ftp那一行的TMP要用引號指定 如" TMP"或' TMP'
03/26 23:44, 3F
文章代碼(AID): #1JB_f-nc (LinuxDev)
文章代碼(AID): #1JB_f-nc (LinuxDev)