2012-10-24 93 views
0

嗨即時通訊新的Linux和需要幫助的shell腳本我寫信自動找到FTP服務器的IP和複製文件到他們。這是代碼我有,但它運行錯誤shell腳本語法錯誤附近意外的'完成'

USER=anonymous 
PWD=any 
PORTCHECK="1" 
for IP in 'sqe 6 250'; 
do 
PORTCHECK= nmap -p21 -oG - 192.168.1.$IP | grep '21/open' 
if [$PORTCHECK != "1" ]; then 
ftp -p -n -i -v 192.168.1.$IP 
user $USER $PWD 
cd "Mounted Volume" 
put foo 
put bar 
bye 
if 
CHECKPORT="1" 
done 

時,誤差

./newscrpt: line 19: syntax error near unexpected token `done' 
./newscrpt: line 19: `done' 

這是被用來重新安裝後的文件複製到多個winCE的媒體系統,請幫助我不能工作了

回答

3

你打算說fi而不是if只是上面CHECKPORT我想。

+0

非常感謝的是固定它 – user1772183

0

如果你看看if聲明的結構,你會注意到他們需要一個thenfi。參見下文:

if [ conditional expression ] 
then 
    //stuff 
fi 
0

而不是寫for IP in 'sqe 6 250';(斷碼與seq),用途:

for IP in {6..250} 
+0

感謝那些幫助 – user1772183

+0

使用縮進,它不只是一個選項,更使當你尋求幫助!這將幫助你和我們。此外,如果它有用,請考慮接受和/或提高我的回覆。 –

相關問題