- A+
所属分类:linux技术
Linux下脚本文件第一行的作用
-
在Linux/Unix系统中,你可以在脚本
hello.py
顶部添加以下命令让Python脚本可以像SHELL脚本一样可直接执行:#! /usr/bin/env python3
tip:需要修改脚本权限
chmod +x hello.py
,然后就可以使用./hello.py
运行 -
关于脚本第一行的 #!/usr/bin/python3 的解释
相信很多不熟悉 Linux 系统的同学需要普及这个知识,脚本语言的第一行,只对 Linux/Unix 用户适用,用来指定本脚本用什么解释器来执行。
有这句的,加上执行权限后,可以直接用 ./ 执行,不然会出错,因为找不到 python3 解释器。
-
#!/usr/bin/python3
是告诉操作系统执行这个脚本的时候,调用 /usr/bin 下的 python3 解释器。 -
#!/usr/bin/env python3
这种用法是为了防止操作系统用户没有将 python3 装在默认的 /usr/bin 路径里。当系统看到这一行的时候,首先会到 env 设置里查找 python3 的安装路径,再调用对应路径下的解释器程序完成操作。#!/usr/bin/python3 相当于写死了 python3 路径。
#!/usr/bin/env python3 会去环境设置寻找 python3 目录,可以增强代码的可移植性,推荐这种写法。
-
分成两种情况:
(1)如果调用 python 脚本时,使用:
python hello.py
tip:
#!/usr/bin/python3
被忽略,等同于注释(2)如果调用python脚本时,使用:
./hello.py
tip:
#!/usr/bin/python3
指定解释器的路径 -