linux脚本中#!的作用

用来指定脚本用什么解释器来执行

拿python脚本来举例

同一个脚本test.py

print "hello python"

如果在第一行加了#!/usr/bin/python,那么在执行脚本时可以直接./test.py

如果没加#!/usr/bin/python,直接执行./test.py,会报错

[root@demo200 sqlw]# ./test.py 
./test.py: line 1: print: command not found

加了#!/usr/bin/python,直接执行./test.py,效果如下

[root@demo200 sqlw]# ./test.py 
hello python

如果python不是装在默认的/usr/bin路径里,可以用#!/usr/bin/env python这种写法

#!/usr/bin/env python 这种用法是为了防止操作系统用户没有将 python 装在默认的 /usr/bin 路径里。当系统看到这一行的时候,首先会到 env 设置里查找 python 的安装路径,再调用对应路径下的解释器程序完成操作。

如果没写#!/usr/bin/python,可以使用如下方法调用脚本

扫描二维码关注公众号,回复: 10743806 查看本文章

[root@demo200 sqlw]# python test.py 
hello python

如果使用上面的方法调用的脚本里面有#!/usr/bin/python,会被忽略掉,等同于注释的效果

发布了33 篇原创文章 · 获赞 2 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/sun_977759/article/details/90753499