2011-08-02 80 views
0

我需要將此文件 ftp://1034733:[email protected]/idx_fl_ftp_down/idx_ftmyersbeach_dn/ftmyersbeach_data.zip 複製到我的網站的服務器。這似乎是一項簡單的任務......但是,在這一點上我找不到解決方案。 PHP似乎無法完成工作。 Wget是我的下一個想法,但是,godaddy的wget安裝給了我一個「連接被拒絕」的問題(儘管它在我的電腦上工作 - mac os x 10.6)。我現在認爲它與godaddy的事情有關,但我堅持我的。我的目標是編寫一個腳本,通過cron作業執行(我需要每天下載這個文件)。有人請幫忙!我想把我的頭髮從頭上扯下來!我已經花了最後兩週的時間了! 此外,我已經嘗試使用通過殼和wget捲曲。都失敗了。不幸的是我只能訪問這個鏈接,我沒有爲idx.living.net FTP登錄需要Shell腳本從ftp鏈接下載文件?

+0

的用戶名和密碼在此鏈接提供的 - 用戶:1034733 - 密碼:ze3Kt699vy14 - 當我使用的鏈接與wget,它適用於我'wget ftp:// 1034733:ze3Kt699vy14 @ idx.living.net/idx_fl_ftp_down/idx_ftmyersbeach_dn/ftmyersbeach_data.zip' – powerMicha

+0

是的wget也可以在我的個人電腦上正常工作,但我主持的網站在godaddy上,我得到一個連接拒絕問題 – user853819

+0

我認爲你不允許在你的服務器上建立傳出連接。如果可以在防火牆上打開特定端口,請聯繫管理員 – powerMicha

回答

1
#!/bin/sh 

# ftpget - given an ftp: style URL, unwrap it, and try to obtain the file using ftp. 

if [ $# -ne 2 ] && [ $# -ne 3 ]; then 
    echo "Usage: $0 ftp://... username [password]" >&2 
    exit 1 
fi 

# Typical URL: ftp://ftp.ncftp.com/2.7.1/ncftpd-2.7.1.tar.gz 

if [ "$(echo $1 | cut -c1-6)" != "ftp://" ] ; then 
    echo "$0: Malformed url. I need it to start with ftp://" >&2; 
    exit 1 
fi 

server="$(echo $1 | cut -d/ -f3)" 
filename="/$(echo $1 | cut -d/ -f4-)" 
basefile="$(basename $filename)" 
username="$(echo $2)" 
password="" 
if [ $# -eq 3 ] ; then 
    password="$(echo $3)" 
fi 

#rm $basefile 
echo ${0}: Downloading $basefile from server $server 

ftp -n << EOF 
open $server 
user $username $password 
bin 
get $filename $basefile 
quit 
EOF 

if [ $? -eq 0 ] ; then 
    #chmod +x $basefile 
    ls -l $basefile 
fi 

exit 0 
+1

某些解釋對於不熟悉shell腳本的成員很有用;-) – powerMicha

+0

我確信這是一個非常基本的問題,但我並不十分熟悉shell腳本,所以:我如何將我的url放到這個腳本中? – user853819

+0

好,快速添加。我嘗試使用FTP命令,一切工作正常......除了它告訴我文件或文件夾不存在,然後關閉連接!有任何想法嗎? 的ftp -n << EOF 開放idx.living.net 用戶1034733 ze3Kt699vy14 斌 GET 「/ idx_fl_ftp_down/idx_ftmyersbeach_dn /英尺myersbeach_data.zip」 「ftmyersbeach_data.zip」 退出 EOF 這裏的錯誤 550/idx_fl_ftp_down/idx_ftmyersbeach_dn/ft myersbeach_data.zip:沒有這樣的文件或文件夾。 221服務關閉控制連接。 – user853819