3
我想从我的Groovy脚本执行python外部过程,但它不产生任何输出。Groovy脚本无法执行外部过程
所以,作为一个小的完整性测试我试图简单地输出Python版本:
def command = """ /usr/local/bin/python -V """
def proc = command.execute()
proc.waitFor()
println "This is output: " + proc?.in?.text
以上不产生任何输出,不过,从我的命令行我能够运行/usr/local/bin/python -V
奇怪的是,如果我修改脚本运行identify
,那么它确实会产生一个输出。
def command = """ /usr/local/bin/identify --version """
def proc = command.execute()
proc.waitFor()
println "This is output: " + proc?.in?.text
什么能导致这种行为?
哇,永远不会知道这一点。我的Python脚本输出的东西使用'打印'的东西“'不工作,这就是为什么我尝试'-V'。那是否会打印到标准输出? – Anthony 2014-10-11 03:15:48
'print'语句(在PYthon 3.x中的函数)会将消息打印到标准输出,除非您使用>> >> sys.stderr'(或Python 3.x中的'file = sys.stderr') – falsetru 2014-10-11 03:16:47