Ant脚本 ftp、telnet、ssh 使用

Java代码   收藏代码
  1. 1编写脚本前说明  
  2.      1.1   需求:远程部署  
  3.      1.2   详细描述:  
  4.             1、将编译完成的文件COPY到远程服务器上。  
  5.             2、执行远程服务器上的批处理命令,进行清理TOMCAT,并进行发布。  
  6.       1.3   操作系统:Windows2008(ant编译机);windows2003(发布应用的服务器)  
  7.      1.4   依赖:jakarta-oro-2.0.8.jar,  
  8.              下载地址:http://archive.apache.org/dist/jakarta/oro/  
  9.             commons-net-1.4.1.jar,  
  10.               下载地址:http://apache.mirror.phpchina.com/commons/net/binaries/  
  11. 放在引用的LIB目录下,虽然ANT里特别提到不要放到ANT安装目录的LIB下,不过我还是放在下面了。  
  12.   
  13.        1.5   类定义: <taskdef name="telnet" classname="org.apache.tools.ant.taskdefs.optional.net.TelnetTask"/>  
  14.   
  15.        1.6   其它说明:  
  16.         1、使用FTP时,必须使用被动模式。服务器上需要安装FTP服务。  
  17.          2、使用TELNET时,服务器端的TELNET服务需要打开。并且不使用验证方式NTLM。可以使用tlntadmn设置。  
  18.           3、          使用SSH时,服务器上也需要安装SSH服务。  
  19. 2 脚本例子  
  20. 2.1   ANT FTP脚本<?xml version="1.0"?>  
  21. <project>    
  22.   <target name="ftp" description="ftp" >  
  23.     <ftp server="172.16.91.4"  
  24.              userid="ftp"  
  25.              password="ftp">  
  26.         <fileset dir ="${RELEASE_12580_DIR}">  
  27.         </fileset>  
  28.     </ftp>  
  29. </target>  
  30. </project>   
  31.    
  32.   
  33. 2.2   ANT TELNET脚本   
  34.   
  35. <?xml version="1.0"?>  
  36. <project>    
  37.  <target name="telnet" description=" telnet ">  
  38.    <telnet userid="administrator" password="**********"  
  39.            server="172.16.80.228" port="23" initialCR="yes" timeout="50">  
  40.       <read timeout="30">*</read>  
  41.       <write>start e: \test.bat</write>  
  42.    </telnet>  
  43.   </target>  
  44. </project>   
  45.    
  46.   
  47. 出现的问题:  
  48. 1、 使用ANT调用FTP时,客户端的防火墙需要进行设置,不限制FTP程序。  
  49. 2、 TELNET对WINDOW的支持感觉很差,尝试了多次,有时成功有时不成功。最终放弃。TELNET不支持进行本地某个目录。如<write>cd e:\test</write>这样是不可以的。另外由于不能进入本地的某个目录,所以也无法使用<read timeout="30">e:\test</read>来验证是否进入想要登录的目录,无法决定是否发送下次指令。而ANT中TELNET只有<read>指令读取成功,才会进行下一条。所以发送<write>指令无法控制。  
  50. 3、 还有一个问题是,telnet到服务器后,用tlntadmn-s查看,都是一连接,就马上断开了,所以有时无法执行远程的批处理命令。不能稳定地运行。目前不知道解决方法  
  51. 2.3   ANT SSH脚本 <?xml version="1.0"?>  
  52. <project>    
  53.  <target name="sshexec" description="sshexec”  
  54.     <sshexec host="172.16.91.4"  
  55.       username="administrator"  
  56.          password="***********"  
  57.          port="22"  
  58.          trust="true"  
  59.          command="i:/ecom/deploy_test.bat"/>  
  60.   </target>   
  61.  </project>  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值