用户操作
[留言]  [发消息]  [加为好友] 
订阅我的博客
XML聚合    FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
pumawang的公告
文章分类
    存档

    原创  不同系统间的自动FTP程序,Crontab的写法,源码总结。 收藏

    一个项目后的总结,写出来给自己一个总结,希望也能给别人一点点方便。
    1。不同系统之间,自动传输文件的脚本。
    2。Aix下执行java程序,sh脚本的写法,以及Crontab 的写法。

    自动FTP 是一个比较实用的功能,在很多系统中需要,在自己的项目中用到了,摸索了一段时间,现在把在不同的系统中运行方式写出来,
    给自己的一个总结。


    1。从Aix 到另一台Aix ,FTP数据的程序范例:
     CertFTP.sh
     #Begin CertFTP.sh File.........................
     # Auto FTP For App2,App1 to Web1, ........
     # Use for The Custom Cert auto upload to Web Server and provide the Download for Bank .....
     # need be do every 30 Minus that can give the ..................
     export user=ftpusr1
     export pass=hahah
     export hostclient1=10.1.1.1
     export file02=/usr/WebSphere/AppServer/installedApps/CSJApplication.ear/BasicApp.war/shuiy/upload/02/
     export strDest02=/usr/HTTPServer/htdocs/cert/02/
     export strDest=/usr/HTTPServer/htdocs/cert/
     # Begin to Ftp from app2 to Web1 ...........
     ftp -n $hostclient1 < user $user $pass
     prompt off
     cd $strDest02
     lcd $file02
     binary
     mput *.*
     bye
     !EOF!
     cp /usr/WebSphere/AppServer/installedApps/CSJApplication.ear/BasicApp.war/shuiy/upload/02/*.* /usr/WebSphere/AppServer/installedApps/CSJApplication.ear/BasicApp.war/shuiy/upload/bak/02/
     rm /usr/WebSphere/AppServer/installedApps/CSJApplication.ear/BasicApp.war/shuiy/upload/02/*.*
     #end CertFTP.sh File.........................
     
     crontab -e
     添加一行数据,如下:
     33 * * * * . ~/.profile;cd /usr/WebSphere/AppServer/installedApps/CSJApplication.ear/BasicApp.war/shuiy/shfile;./CertFTP.sh
     每个小时的33分钟运行一次。

    2。在windowns 上运行,定时从Aix上下载数据,然后将Aix上的数据删除的脚本:
       两个文件: ftpFromApp1.txt,AddToPlan.bat.

      1) ftpFromApp1.txt 的内容。
     # Begin  ftpFromApp1.txt file ..
     open 10.1.2.1
     ftpusr1
     xiajun04
     cd /usr/WebSphere/AppServer/installedApps/CSJApplication.ear/BasicApp.war/shuiy/zipfiles/
     lcd D:\Job\付款通知自动运行\zip
     binary
     prompt
     mget *.*
     mdelete *.*
     bye
     # end  ftpFromApp1.txt file ..

      2)AddToPlan.bat的文件内容。
            #Begin AddToPlan.bat File ...
     ftp -s:ftpFromApp1.txt
     #End AddToPlan.bat File ...

      然后将AddToPlan.bat 添加到 计划任务中,就可以定期将数据保存到windows 上的机器。

    3.从windows 上定期将指定文件名称(开头是310开头的文件)发送到指定服务器上。
      两个文件,AddToPlan.bat,ftpupload.txt
      1) ftpupload.txt.
     # begin ftpupload.txt file ..
       open 78.20.32.40
       mqm
       sczjsczj
       cd /home/mqm/fj_user/Files
       lcd c:\nsrData
       prompt
       mput 310*.*
       bye
     # end ftpupload.txt file ..

      2) AddToPlan.bat 。
     # begin AddToPlan.bat 文件。
     ftp -s:ftpupload.txt
     cd c:\nsrData
     echo y |copy 310*.txt c:\nsrData\Bak
     echo y |del 310*.txt
     #end AddtoPlan.bat 文件。
       将AddToPlan.bat 放到计划任务中就可以了。



    4.unix 上定时执行程序,需要将 java程序执行的路径写到 classpath 中。
      fjInser.sh
     #begin fjInsert.sh ..................
     . ~/.profile
     export CLASSPATH=/home/mqm/classes/j2ee.jar:$CLASSPATH
     export CLASSPATH=/home/mqm/subTrans:$CLASSPATH
     export PATH=/usr/java131/jre/bin:/usr/java131/bin:$PATH
     cd /home/mqm/subTrans
     java MQRecv
     #end fjInsert.sh................
    00 20 * * * . ~/.profile;export CLASSPATH=/home/mqm/subTrans:$CLASSPATH;/home/mqm/subTrans/fjInsert.sh


    5.crontab 的用法。
    浏览 crontab -l
    修改编辑 crontab -e
            然后 esc 和 i 键来回切换模式状态,i 为编辑,esc后为功能(x 删除,dd 删一行),:wq 保存退出,:q!不保存退出。就这样。
    * * * * *   五个项目,  
    minute, hour,mday,month,wday,command。它们差不多已经说明了各自的用处。
    Minute 是命令要运行时的分钟,Hour 跟 minute 差不多,只是用小时来表示。Mday 是每个月的天。
    Month 跟 hour 还有 minute 都差不多,用月份来表示。wday 字段表示星期几。所有这些字段的值必须是数字并且用24小时制来表示。
    。这是最后的一个字段,所以自然就是它指定要运行的程序。

    <完>

    发表于 @ 2004年07月19日 13:39:00 | 评论( loading... ) | 编辑| 举报| 收藏

    旧一篇:如何成为一个优秀的jsp程序员

    • 发表评论
    • 评论内容:
    •  
    Copyright © pumawang
    Powered by CSDN Blog