linux ftp腳本

linux中使用shell腳本自動登陸ftp服務器下載上傳文件。linux

  
  
  
  
  1. #/bin/bash  sql

  2. DATE=`date -d '1 days ago' +%Y%m%d`  shell

  3. GAMEDIR=/home/log/  bash

  4. /usr/kerberos/bin/ftp -n -u <<!  服務器

  5. open IP  ide

  6. user 用戶名 密碼  spa

  7. binary.net

  8. lcd $GAMEDIR  get

  9. prompt  string

  10. get access_$DATE.tar.gz  

  11. close

  12. bye  

  13. !

  14. exit 0

以上代碼中DATE=`date -d '1 days ago' +%Y%m%d`聲明變量DATE爲前一天的日期格式爲20100919,GAMEDIR=/home/log/聲明一個目錄的變量,/usr/kerberos/bin/ftp爲ftp命令的目錄,加入通常的shell中最好寫上目錄,不然命令可能沒法執行的,linux系統能夠使用#which 命令名稱 查看命令程序的目錄是哪裏。

/usr/kerberos/bin/ftp -n -u <<!
-n意思是不讀取默認.netrc文件中的設定
-u參數能夠解決如下報錯
'AUTH GSSAPI': command not understood
'AUTH KERBEROS_V4': command not understood
<<重定向文件的導入
!是即時文件的標誌它通常都是成對的出現,用來標識即時文件的開始和結尾

open
鏈接ftp服務器的IP。

user 用戶名 密碼
ftp服務器登陸用戶、密碼。

binary
使用二進制傳輸模式

lcd $GAMEDIR
切換本地所在目錄

prompt
打開prompt模式,通常prompt模式在使用多文件傳輸中才用到,默認爲打開狀態。若是prompt模式未打開,命令mput和mget將會傳輸目錄中的全部文件。

get
下載文件

close
關閉與ftp服務器的鏈接

bye斷開與ftp服務器的鏈接

相關文章
相關標籤/搜索