在 groovy 脚本中从 ant - sshexec 获得格式良好的输出
我的问题是,ant 任务的输出在开头总是有一些 [ssh-exec] 信息文本。我可以抑制/禁用它吗?
到目前为止我的代码:
def ant = new AntBuilder()
// .... variable definition ...
ant.sshexec(host: host,
port: port,
trust: true,
username: username,
password: password,
command: 'ls')
>>> output:
[sshexec] Connecting to foomachine.local:22
[sshexec] cmd : ls
[sshexec] oldarchive.gz
[sshexec] newarchive.gz
[sshexec] empty-db.sh
[sshexec] testfile.py
我只想获得我执行的 cmd 的原始输出...
一些想法?!
my problem is, that the output from the ant task alwas has some [ssh-exec] infotext at the beginning. can i suppress / disable that?
my code so far:
def ant = new AntBuilder()
// .... variable definition ...
ant.sshexec(host: host,
port: port,
trust: true,
username: username,
password: password,
command: 'ls')
>>> output:
[sshexec] Connecting to foomachine.local:22
[sshexec] cmd : ls
[sshexec] oldarchive.gz
[sshexec] newarchive.gz
[sshexec] empty-db.sh
[sshexec] testfile.py
i just want to have the raw output from the cmd i execute...
some ideas?!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以将原始输出保存在 Ant 属性中:
You can save the raw output inside an Ant property:
问题是outputproperty无法正常工作(它没有设置ant变量)。
我经常使用 antcontrib 中的 trycatch 来测试是否发生错误,而不是读取返回值。
例子 :
the problem is that outputproperty is not working properly (it does not set the ant variable).
I often use trycatch from antcontrib to test if error occurs instead of reading return value.
Example :
我在 gradle 中遇到了同样的问题,从那里我不得不改变访问该属性的方式:
根据 官方 gradle 文档 3.3
是正确的方法去。
希望这可以帮助处于相同情况的人。干杯
I tripped over the same issue in gradle and from there I had to change the way to access the property:
According to the official gradle doc 3.3
is the correct way to go.
Hope this helps people in the same situation. Cheers