govで簡単なコマンドを実行する方法を探しています(jenkinsで使用)。Groovyは引用符付きのコマンドを実行します
私のコードは次のとおりです。私は(それの後に、スペース)テキストを持つすべての行をgrep検索したい
"grep 'text ' /tmp/test.txt".execute()
。
しかし、私は常に "テキスト"(スペースなし)のgrepを得ています。実際に何らかの理由でグルーヴィーが私の引用符を落とす。
govで簡単なコマンドを実行する方法を探しています(jenkinsで使用)。Groovyは引用符付きのコマンドを実行します
私のコードは次のとおりです。私は(それの後に、スペース)テキストを持つすべての行をgrep検索したい
"grep 'text ' /tmp/test.txt".execute()
。
しかし、私は常に "テキスト"(スペースなし)のgrepを得ています。実際に何らかの理由でグルーヴィーが私の引用符を落とす。
は、以下のことを試してみてください:Groovyはよく引用符を処理しない
def res = ['grep', 'text ', 'test.txt'].execute(null, new File('/tmp/')).text
あなたの例は 'grep text test.txt'に相当し、' grep 'text' test.txt'にする必要があります – user2988257
。 [グルーヴィーなスペースを含むパラメータを指定して実行]の
['grep', 'text ', '/tmp/test.txt'].execute().text
可能な複製(https://stackoverflow.com/questions/786160/groovy-execute-with-parameters-containing-spaces):代わりに、配列形式を使用することができます – doelleri