释伴:Linux上的shebang符号(#!)

Shebang在Unix系统的脚本第一行开头写,它指明了执行这个脚本文件的解释程序。

  1. 没有声明shebang,则默认用当前的shell去解释这脚本文件。
  2. 声明了shebang,但解释程序不存在,或没有执行权限,会报“bad interpreter”错误。
  3. 声明了shebang,且解释程序存在并有执行权限,但它不是合法的可执行文件,会被忽略,转交给当前shell去解释这个脚本文件。
  4. 显式指定解释程序,则会忽略shebang,如"bash test.sh"。

你可能感兴趣的:(Linux,bash,shell,linux)