Ant内置任务之scp

一、概述

        scp是Ant1.6引入的内置任务,用于复制文件或文件集到运行ssh守护进程的远程计算机上,或者从远程计算机上复制文件到本地。此任务需要外部包jsch.jar版本为0.1.42+。

二、属性

        file:要拷贝的文件,可以是本地路径或者user[:password]@host:/directory/path格式的远程路径。如果使用基于密钥的身份验证或者指定password属性,则:password可以省略。远程路径是通过是否包含@符号来识别的,如果本地路径包含@字符则此任务无法正常运行。
        localfile:ant1.6.2起,file属性的替代方法,总是指向本地文件,添加此属性的原因是,当赋值file属性时,如果包含@字符就会视为远程路径。但是@也可以出现在本地路径中。也就是说当本地路径中包含@字符时,可以使用此属性来避免将本地路径识别为远程路径。
        remotefile:ant1.6.2起,file属性的替代方法,总是指向远程文件。
        todir:拷贝到的目录,可以是本地路径或者user[:password]@host:/directory/path格式的远程路径。如果使用基于密钥的身份验证或者指定password属性,则:password可以省略。远程路径是通过是否包含@符号来识别的,如果本地路径包含@字符则此任务无法正常运行。
        localtodir:ant1.6.2起,todir属性的替代方法,总是指向本地目录,添加此属性的原因是,当赋值todir属性时,如果包含@字符就会视为远程目录。但是@也可以出现在本地目录路径中。也就是说当本地目录路径中包含@字符时,可以使用此属性来避免将本地目录路径识别为远程目录路径。
        localtofile:ant1.6.2起,todir属性的替代方法,在接收文件时将文件名更改为指定的名称,只有在接收单个文件时有效。
        remotetodir:ant1.6.2起,todir属性的替代方法,总是指向远程目录。
        remotetofile:ant1.6.2起,todir属性的替代方法,发送文件时将文件名称更改为指定的名称,只有在发送单个文件时有效。
        post:连接到远程主机的端口,默认为22。
        trust:如果设置为true/yes,则信任所有未知主机。如果设置为false,则连接的主机必须在knownhosts中列出,默认为false。
        knownhosts:设置用于验证远程主机标识的已知主机文件,文件必须是ssh2格式的。默认为${user.home}/.ssh/known_hosts。
        failonerror:如果命令未成功完成,是否停止构建,默认为true。
        password:密码,如果使用的是基于密钥的身份验证,或者在file或todir属性中设置了密码,则不需此属性。
        keyfile:保存私钥的文件的位置,如果使用基于密钥的认证,则必须设置此属性。
        passphrase:私钥的密码。默认为空字符串。
        verbose:ant1.6.2起,是否输出详细的信息给用户,默认为false。
        sftp:ant1.7起,scp是否使用sftp协议,sftp 协议是 SSH2 的文件传输协议。如果与不支持scp1的服务器进行文件拷贝建议将此属性设置为true。
        preserveLastModified:ant1.8起,是否保留下载的文件的最后修改时间的时间戳,只有从远程传输到本地系统时有效并且可能无法与不支持ssh2的服务器工作,默认为false。

        scp支持嵌套fileset元素来选择要拷贝的文件,使用fileset元素,必须设置todir属性。

三、简单示例

<project>
	<!--<scp trust="true" file="build.xml" todir="root:root@192.168.0.112:/root/test.xml"/> -->
	<scp trust="true" todir="result" file="root:root@192.168.0.112:/root/*"/>
</project>


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值