2011年1月18日 星期二

用curl透過ftp下載資料

在一般的linux server 上,我都是使用 ncftp 這個工具程式透過 crontab 自動下載備份資料。
但是在很多虛擬主機和NAS上,並沒有ncftp,但是有時可以找到 curl 這個程式,所以我只好改用這程式。
curl 主要是用來透過http下載網頁資料的,但是也可以使用 ftp協定
我的指令如下
curl -O -u 帳號:密碼 ftp://FTP檔案完整路徑
-O 表示存成遠端檔案的名字
也可以使用 -o 指令指定要存成的檔案名字,例如
curl -o 目標檔名 -u 帳號:密碼 ftp://FTP檔案完整路徑
我在NAS上測試的時候,還出現了「(23) Failed writing body」,這個錯誤,我在網上找到會出現這個訊息的2個可能
1、所使用的檔名是該系統上不允許的
2、空間不足
原來我的工作目錄是在NAS的 ramdisk 上,空間只剩下2.8M,所以下載沒多久就出現這個錯誤訊息了,後來把工作目錄移到硬碟上就ok了
●參考資料
1、cURL Manual

沒有留言: