如何使用ant
将目录从Windows系统复制到远程Windows系统有一个scp命令和FTP命令,请给我一个使用scp和ftp执行此任务的示例。
此外,scp需要SSH,这在Windows系统中并不常见。
那么如何使用ant
在Windows系统上使用SCP另外,如果您对使用ant或java的Windows系统有更好的方法,请分享
还有一个SC命令(不知道如何使用它)
答案 0 :(得分:2)
下载:
<scp file="${username}:${password}@${ip}:${path-to-file}" todir="${dir}" trust="true" />
或上传:
<scp file="${path-to-file}" todir="${username}:${password}@${ip}:${dir}" trust="true" />
Ant scp任务提供了诸如localFile和remoteFile之类的属性来替换“file”,以及localTofile / localTodir和remoteTofile / remoteTodir来替换“dir”。当您需要一些scp任务将文件从服务器传输到本地计算机时,使用这些属性可以帮助避免混淆,而其他人则可以将文件从本地计算机上传到服务器。 像这样(上传):
<scp localFile="${path-to-file}" remoteTodir="${username}:${password}@${ip}:${dir}" trust="true" />
查看ant手册以查看更多信息: http://ant.apache.org/manual/Tasks/scp.html
注意:
1.避免复制多个文件;将zip存档和ant构建文件一起复制,然后在目标计算机上解压缩
2.使用scp,需要在目标机器上设置ssh服务器;你还需要将jsch.jar放在你的ANT_HOME / lib中。 jsch.jar可以从
答案 1 :(得分:1)
您应该使用FTP在Windows计算机之间复制文件。还有其他协议,但你应该使用FTP。
使用FTP的示例。
<ftp server="${server.location}"
remotedir="${directory.to.copy}"
userid="${ftp.username}"
password="${ftp.password}"
depends="yes">
<fileset dir="**Files****"/>
</ftp>
您可以进一步查找详细信息here。有很多选择可以尝试。
答案 2 :(得分:1)
首先从C:\ apache-ant-1.8.2 \ lib文件夹中的http://www.jcraft.com/jsch /下载jsch-0.1.53.jar文件。然后在build.xml中使用以下代码行
<scp file="${userName}:${password}@${${ip_address}:${directory}/${FileName}" todir="${localDir_Where_to _Copy}" trust="true" />
然后在build.xml中有上面的代码行
答案 3 :(得分:0)
要使用ant scp将目录从本地主机复制到远程主机,您必须指定 文件集目录的父级,包括目录名称,例如。
<scp todir="user@hostname:/destination/dir/" keyfile="id_dsa" passphrase="abc" sftp="true" >
<fileset dir="${parentDir}/" >
<include name="**/${dirToCopy}/" />
</fileset>
</scp>
sftp =“true”帮助了这个主题的另一个用户,所以我把它包括在内。 在我的情况下,我相信在parentDir和dirToCopy的末尾添加“/”,它表示命令行中的目录,最后让我复制一个目录,而不仅仅是它的内容。