可以在文件的开头声明它应该作为Groovy脚本执行吗?
其他脚本语言的示例:
#!/bin/sh
#!/usr/bin/python
#!/usr/bin/perl发布于 2011-03-30 08:13:53
这一个#!/usr/bin/env groovy
将搜索您的路径以查找groovy来执行脚本
发布于 2017-06-06 16:29:13
一个常见的技巧是编写一个在多种语言中都有意义的脚本,也称为“多语言”脚本。
在Bash和Groovy的情况下,这特别容易:
#!/bin/sh
//bin/true; exec groovy -cp .. "$0"
println "Hello from Groovy"exec)#!),它告诉操作系统将脚本作为常规的shell脚本运行。/bin/true命令(无操作);然后在PATH中找到groovy可执行文件,并在脚本文件本身("$0")加上附加参数上运行它,替换当前shell进程groovy将忽略第一行,因为它是一个shebang;它将忽略第二行,因为它是一个注释(//),并将运行脚本的其余部分。如果您需要更复杂的shell部分,比如设置环境变量,或者发现Groovy的安装位置,您可以使用不同的技巧:
#!/bin/sh
'''':
echo Hello from Shell
exec groovy -cp .. "$0"
'''
println "Hello from Groovy"'''':解析为两个空字符串'',后跟一个冒号,这是无操作的。exec或exit'''':解析为长字符串'''的开头,从而跳过所有外壳命令,然后运行脚本的其余部分。发布于 2011-03-30 06:46:59
根据this的说法,你可以使用#!/usr/bin/groovy (如果这是它的位置)。您要查找的搜索词是shebang (这就是第一行的名称)。
https://stackoverflow.com/questions/5479731
复制相似问题