我获得了一大堆项目ant脚本。该脚本对远程计算机使用了许多sshexec和scp调用。我需要更改它以使程序在本地运行,如果需要,所以我想拦截这些远程调用并用exec替换sshexec,用cp替换scp。
示例调用将是:
<sshexec host="${host}" username="${username}" password="${password}" trust="true" usepty="true" command="echo '${password}' | sudo -S ntpdate ${maintain.sync-time.server}" failonerror="false" />
我需要能够检查$ {host}是remotehost还是localhost,如果localhost我使用exec
而不是
现在的问题是:有没有办法避免一个接一个地改变所有的调用(它们在项目中乱七八糟)或有没有办法拦截调用,检查变量然后决定使用sshexec或exec?
答案 0 :(得分:0)
在java中创建一个新的Ant任务,然后在构建脚本上进行正则表达式替换?