Je suis confus de suivre script ( hello.go).
//usr/bin/env go run $0 $@ ; exit
package main
import "fmt"
func main() {
fmt.Printf("hello, world\n")
}
Il peut exécuter. (sur MacOS X 10.9.5)
$ chmod +x hello.go
$ ./hello.go
hello, world
Je n'ai pas entendu parler de shebang à partir de //. Et cela fonctionne toujours lorsque j'insère une ligne vierge en haut du script. Pourquoi ce script fonctionne-t-il?
///....au lieu d' //...être la plus compatible!
go run "$0" "$@"
//&>/dev/null;x="${0%.*}";[ ! "$x" -ot "$0" ]||(rm -f "$x";cc -o "$x" "$0")&&exec "$x" "$@"...