我正在编写一个简单的 shell 脚本,发现我的 shell 脚本不需要 shebang 行
#!/bin/sh
如果我为我的脚本授予执行权限并使用./myscript.sh. 它运行良好。
我正在使用bashshell,/bin/sh实际上是指向bash.
lrwxrwxrwx 1 root root /bin/sh -> bash
我知道 shebang 行用于告诉 shell 哪个解释器用于脚本的其余部分。
如果我错过了 perl 中的 shebang 行,请授予执行权限并运行./myscript.pl,它不起作用。
这里到底发生了什么?如果我使用./,什么时候真正需要 shebang 线?