Windows中的Shebang

问题描述

由于Windows不像Unix之类的操作系统那样支持shebang,因此您可以在脚本开头指定解释器:

是否将其放入脚本并在Windows上运行会导致问题?

我为PHP尝试过它,这似乎很好。其他解释者是否有可能将其视为语法错误,或者无论如何都会很好?

解决方法

大多数跨平台运行的语言运行时都知道shebang并忽略它,而不管平台是什么,或者(如Perl)知道它并对其进行正确的处理(通过调用所需的程序)。因此,如果您使用的是可在多种操作系统上运行的PHP之类的语言,那么您应该没有问题。

此外,这些语言中的许多语言都忽略了shebang,因为在该语言中,井号(#)会引起注释,因此即使它们对此没有特殊的处理,他们仍然会忽略它。

您唯一一次可能会遇到脚本问题的情况是,如果您使用的语言中#不是注释,并且仅在Windows上运行,但是我知道很少有这种情况。