[英]Can I use & > in a groovy script executing shell commands?
我可以在執行Shell命令的常規腳本中使用&>嗎? 即
/someDir/myScripts/stop.sh $NAME & > /someDir/something/${NAME}/logs/stop.log
只會
'/someDir/myScripts/stop.sh $NAME & > /someDir/something/${NAME}/logs/stop.log'.execute()
工作還是我需要做一些復雜的事情?
cmd = "/someDir/myScripts/stop.sh $NAME & > /someDir/something/${NAME}/logs/stop.log"
['sh', '-c', cmd].execute();
可能比.execute()更好,但是我只是想知道這是否可能
如果我不能實現這一點,我相信我可以在該腳本中使用該命令調用另一個.sh,但是我想知道是否可以在.groovy文件中進行操作
編輯
名稱是在我的groovy程序中定義的(也想知道我是否需要路徑),該程序只是嘗試使用給定的stop.sh腳本來停止某事(也停止該程序的日志)
是的,您必須調用Shell來使諸如此類的任務后台運行。 一個簡單的常規解決方案將是使用消耗過程consumeProcessOutputStream
運行該過程:
new File("/someDir/something/${NAME}/logs/stop.log").newOutputStream { log ->
"/someDir/myScripts/stop.sh $NAME".execute().consumeProcessOutputStream(log)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.