强大的 ant scp 和 sshexec

<? xml version="1.0" encoding="UTF-8" ?> 
< project  name ="ssh" > 
    
 < property  file ="ssh.properties"   /> 
    
 < tstamp > 
        
 < format  property ="TODAY"  pattern ="yyyyMMddHHmm"   /> 
    
 </ tstamp > 
    
 < property  name ="ssh.path"  value ="/data/meganotes/shell/"   /> 


    
 < target  name ="shell/ 文件 上载/覆盖" > 
        
 < input  addproperty ="scp_coverage_shell_file" 
            message
 ="输入(ssh/ 下文件名 \n\r 上载或覆盖 到服务器 218 ${ssh.path} ):" > 
        
 </ input > 
        
 < input
            
 message ="请确定是否使用 ssh/${scp_coverage_shell_file} 覆盖服务器中 ${ssh.host}:${ssh.path}${scp_coverage_shell_file} (y,n)" 
            validargs
 ="y,n"  addproperty ="do.coverage"  defaultvalue ="n"   /> 
        
 < condition  property ="do.abort" > 
            
 < equals  arg1 ="n"  arg2 ="${do.coverage}"   /> 
        
 </ condition > 
        
 < fail  if ="do.abort" > 退出 </ fail > 

        
 < sshexec  host ="${ssh.host}"  username ="${ssh.myName}" 
            password
 ="${ssh.myPass}"  trust ="true" 
            command
 ="
                    mkdir -p ${ssh.path}backup/${TODAY} ;
                    if [ -f ${ssh.path}${scp_coverage_shell_file}   ] ;
                    then  
                        cp ${ssh.path}${scp_coverage_shell_file} ${ssh.path}backup/${TODAY}/ ;
                    fi ;
        "
 > 
        
 </ sshexec > 
        
 < scp  file ="ssh/${scp_coverage_shell_file}" 
            todir
 ="${ssh.myName}:${ssh.myPass}@${ssh.host}:${ssh.path}" 
            trust
 ="true"  verbose ="true"   /> 

        
 < sshexec  host ="${ssh.host}"  username ="${ssh.myName}" 
            password
 ="${ssh.myPass}"  trust ="true" 
            command
 ="chmod 777 ${ssh.path}${scp_coverage_shell_file}" > 
        
 </ sshexec > 
    
 </ target > 

    
 < target  name ="shell/ 文件查看" > 
        
 < input  addproperty ="show_shell_file"  message ="输入查看文件名(*sh):" 
            defaultvalue
 ="*" > 
        
 </ input > 
        
 < sshexec  host ="${ssh.host}"  username ="${ssh.myName}" 
            password
 ="${ssh.myPass}"  trust ="true" 
            command
 ="ls  /data/meganotes/shell/${show_shell_file}" > 
        
 </ sshexec > 
    
 </ target > 

    
 < target  name ="shell/ 文件拷贝" > 
        
 < input  addproperty ="scp_shell_file" 
            message
 ="输入 /data/meganotes/shell/ 下需要文件名(cp 到 ssh 下):" > 
        
 </ input > 
        
 < scp
            
 file ="${ssh.myName}:${ssh.myPass}@${ssh.host}:/data/meganotes/shell/${scp_shell_file}" 
            todir
 ="ssh"  trust ="true"  verbose ="true"   /> 
    
 </ target > 



    
 < target  name ="admin-mvn组合操作" > 
        
 < exec  executable ="cmd" > 
            
 < arg  value ="/c"   /> 
            
 < arg  value ="${basedir}/sh/mvn/meganotes_mvn_clear.bat"   /> 
        
 </ exec > 
        
 < exec  executable ="cmd" > 
            
 < arg  value ="/c"   /> 
            
 < arg  value ="${basedir}/sh/mvn/meganotes_mvn_install.bat"   /> 
        
 </ exec > 
        
 < exec  executable ="cmd" > 
            
 < arg  value ="/c"   /> 
            
 < arg  value ="${basedir}/sh/mvn/mn_mod_admin_mvn_intall.bat"   /> 
        
 </ exec > 
    
 </ target > 


    
 < target  name ="admin-tomcat日志" > 
        
 < sshexec  host ="${ssh.host}"  username ="${ssh.myName}" 
            password
 ="${ssh.myPass}"  trust ="true"  command ="${ssh.adminRunLog}" > 
        
 </ sshexec > 
    
 </ target > 

    
 < target  name ="schedule-tomcat日志" > 
        
 < sshexec  host ="${ssh.host}"  username ="${ssh.myName}" 
            password
 ="${ssh.myPass}"  trust ="true" 
            command
 ="${ssh.scheduleRunLog}" > 
        
 </ sshexec > 
    
 </ target > 
    
 < target  name ="查找2008/下Mp3没转128-64文件夹" > 
        
 < sshexec  host ="${ssh.host}"  username ="${ssh.myName}" 
            password
 ="${ssh.myPass}"  trust ="true"  command ="${ssh.64k}" > 
        
 </ sshexec > 
        
 < sshexec  host ="${ssh.host}"  username ="${ssh.myName}" 
            password
 ="${ssh.myPass}"  trust ="true"  command ="${ssh.128k}" > 
        
 </ sshexec > 
        
 < sshexec  host ="${ssh.host}"  username ="${ssh.myName}" 
            password
 ="${ssh.myPass}"  trust ="true" 
            command
 ="${ssh.128kto64k.err}" > 
        
 </ sshexec > 
    
 </ target > 

    
 < target  name ="admin模块测试" > 
        
 < input  addproperty ="admin_test_input" 
            message
 ="测试类输入(Video*Test):"  defaultvalue ="*Test" > 
        
 </ input > 
        
 < echo  message ="${admin_test_input}" ></ echo > 
        
 < exec  executable ="cmd" > 
            
 < arg  value ="/c"   /> 
            
 < arg
                
 value ="${basedir}/sh/admin_test.bat ${admin_test_input} "   /> 
        
 </ exec > 
    
 </ target > 
</ project >

你可能感兴趣的:(ant,scp,和,sshexec,强大的)