|
|
|
|
|
by MayeulC
503 days ago
|
|
Yeah, it is very useful and allows environment variables, so you can do /usr/bin/env -S myvar=${somevar} ${someprefix}/bin/myprogram
However, as another commenter wrote, support is not universal (looks present in RH8 but not RH7 for instance). Also, the max length of a shebang is usually limited to about 127 characters.So sometimes you have to resort to other tricks, such as polyglot scripts: /usr/bin/sh
"""exec" python --whatever "$@"
Well this is still a Python docstring
"""
print("hello")
Or classically in Tcl: #! /usr/bin/sh
# Tcl can use \ to continue comments, but not sh \
exec tclsh "$@" # still a comment in Tcl
puts "hello"
Such things are not usually needed, until they are, and they make for fun head-scratching moment. I would personally recommend against them if they can be avoided, as they are relatively fragile.I'll leave the self-compiling C language script "shebang" as an exercise to the reader ;) |
|