groovy ant用pipeTo执行

时间:2014-09-10 14:04:55

标签: groovy

我正在尝试使用带有pipeTo的awk并需要语法帮助。

这有效:

def myId = 'myid'
print "ls -al".execute().pipeTo("grep ${myId}".execute()).text

这失败了:

print "ls -al".execute().pipeTo('awk \'{print $2}\''.execute()).text
print "ls -al".execute().pipeTo('''awk '{print $2}' '''.execute()).text

1 个答案:

答案 0 :(得分:1)

您可以尝试removing the space between print and \$1

p1="ls -la".execute()
p2='awk {print\$1}'.execute()
p1 | p2
p2.waitFor()
print p2.text

注意p2.err.text将包含错误消息(如果有的话){如果p2.text为空,则有用)。