@sysadmin: Ponieważ jądro odczytuje te dwa znaki, i jeżeli wystąpią, to dalszą część linii traktuje jako interpreter, który ma zostać wywołany. Dzięki temu można te skrypty uruchamiać bezpośrednio, jak normalny plik wykonywalny.
Wyjątkiem są skrypty shellowe - jeżeli nie ma #! na początku, a plik nie jest w żadnym binarnym formacie wykonywalnym, to jest traktowany jako skrypt shellowy i interpretowany przez /bin/sh, ale nawet wtedy warto wpisać #!/bin/sh na początku,
Wyjątkiem są skrypty shellowe - jeżeli nie ma
#!na początku, a plik nie jest w żadnym binarnym formacie wykonywalnym, to jest traktowany jako skrypt shellowy i interpretowany przez /bin/sh, ale nawet wtedy warto wpisać#!/bin/shna początku,