如此处所述,您需要捕获stdout / stderr才能 _看到_任何内容。
至少:
def outputStream = new StringBuffer();proc.waitForProcessOutput(outputStream, System.err)//proc.waitForProcessOutput(System.out, System.err)
或者,如本要点所示:
def sout = new StringBuffer(), serr = new StringBuffer()def proc = cmd.execute()proc.consumeProcessOutput(sout, serr)proc.waitForOrKill(1000)println sout
阻止呼叫的示例为:
println new ProcessBuilder( 'sh', '-c', 'du -h --max-depth=1 /var/foo/bar/folder\ with\ spaces | sort -hr').redirectErrorStream(true).start().text
def cmd = ["curl", "-v", "-u", cred, "--upload-file", ${file}, ${location}/${file}]No signature of method: java.lang.String.div() is applicable for argument types: (org.prehaus.groovy.runtime.GStringImpl) values: [file.txt]
‘
/‘in’
${location}/${file}‘被解释为’
/(
div) *** 作,而不是字符串。
尝试使用该
curl命令参数:
${location}+"/"+${file}
如您在随后的问题中所述,所有路径都必须在双引号之间。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)