菜鸟教程:学技术之外,更承载着梦想
涉及脚本第一行的 #!/usr/bin/ 的阐释,讲真不少不太熟知 Linux 系统的同学得去普及这个知识,脚本语言的首行,仅仅对 Linux/Unix 用户适用,用以指明本脚本借助什么解释器去执行。
有这句存在的情况下,当加上执行权限而后,能够直接借助./去执行,不然的话就会出现错误状况,这是由于找不到解释器所致 。
告诉操作系统,执行这个脚本的时候,调用 /usr/bin 下的解释器,是通过 #!/usr/bin/ 来实现的。
#!/usr/bin/env 这种用法,是为了去防止操作系统用户并没有把 安装于默认的 /usr/bin 路径当中。当系统看见这一行之时,首先会前往 env 设置里查找 的安装路径,接着再去调用对应路径之下的解释器程序来完成操作。
#!/usr/bin/ 相当于写死了 路径。
对于#!/usr/bin/env,它会前往环境设置那儿去寻找目录,这样做能够增强代码的可移植性,故而推荐采用这种写法。
分成两种情况:
(1)如果调用 脚本时,使用:
python script.py
#!/usr/bin/ 被忽略,等同于注释
(2)如果调用脚本时,使用:
./script.py
#!/usr/bin/ 指定解释器的路径
PS:shell 脚本中在第一行也有类似的声明。
lib***
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权本站发表,未经许可,不得转载。
