Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Groovy 将Gstring传递给shell命令_Groovy - Fatal编程技术网

Groovy 将Gstring传递给shell命令

Groovy 将Gstring传递给shell命令,groovy,Groovy,我想通过Groovy发送邮件。我在mac中尝试了mail命令,效果很好 这是我正在使用的命令: echo $message | mail -s "subject" mail@mail.com 其中,消息是一个gstring: def message = """ Hi Test mail """ 我面临的问题是;邮件发送时,消息以单行形式发送,而不是以存储方式发送 我犯错误的地方???您可以: [ '/bin/bash', '-c', "echo '$msg' | mail -s 'su

我想通过Groovy发送邮件。我在mac中尝试了
mail
命令,效果很好

这是我正在使用的命令:

echo $message | mail -s "subject" mail@mail.com
其中,
消息
是一个gstring:

def message = """ Hi 

 Test mail """
我面临的问题是;邮件发送时,
消息
以单行形式发送,而不是以存储方式发送

我犯错误的地方???

您可以:

[ '/bin/bash', '-c', "echo '$msg' | mail -s 'subject' mail@mail.com" ].execute().waitFor()
ie:将
msg
用引号括起来
'

显然,
msg
中的任何引号都需要转义,否则将失败


更具弹性的选择是使用java mail

如何运行这一行shell脚本?与您的答案类似