web-dev-qa-db-fra.com

Exécuter un script Groovy à partir de la ligne de commande

Quand j'ai fait which groovy, j'ai obtenu la sortie ci-dessous:

/usr/local/bin/groovy

Alors je suis allé de l'avant et créé un helloworld.groovy avec le contenu ci-dessous

#!/usr/local/bin/groovy
println "hello world"

Après cela, j’ai fait chmod +x helloworld.groovy et essayé d’exécuter le fichier avec ./hellworld.groovy et malheureusement, j’ai eu cette erreur ./helloworld.groovy: line 2: print: command not found

Je pourrais me débarrasser de l'erreur en changeant pour

#!/usr/bin/env groovy
println "hello world"

Pourquoi la première méthode causerait-elle l'erreur?

31
jjennifer

Vous devez exécuter le script comme ceci:

groovy helloworld.groovy
44
grantmcconnaughey
#!/bin/sh
sed '1,2d' "$0"|$(which groovy) /dev/stdin; exit;

println("hello");
0
dieter