本文共 1514 字,大约阅读时间需要 5 分钟。
scp是Ant1.6引入的内置任务,用于复制文件或文件集到运行ssh守护进程的远程计算机上,或者从远程计算机上复制文件到本地。此任务需要外部包版本为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属性。
转载地址:http://uxezb.baihongyu.com/