Jac*_*ijm 12
它是如何工作的(例如 for python2, for python3,替换所有出现的pythonby python3):
python /path/to/script.py
#!/usr/bin/env python脚本头部的shebang ( ) 是一种很好的做法,但不是必需的/path/to/script.py
#!/usr/bin/env python)script.py
#!/usr/bin/env python)script
#!/usr/bin/env python)shell 可以从两个来源(按优先顺序)获取有关如何运行脚本的信息:
python <script>#!/usr/bin/env python然而,语言扩展并没有发挥作用(!)。
几个例子:
一个bash脚本,在命令正确的(语言)信息,不正确家当,不正确的扩展:
#!/usr/bin/env python
echo 'Monkey eats banana'
Run Code Online (Sandbox Code Playgroud)
跑了:
$ sh /path/to/script.py
> Monkey eats banana
Run Code Online (Sandbox Code Playgroud)
运行正确,命令中的信息优先于 shebang 和扩展名。
一个(可执行的)python脚本,以不正确的扩展名运行,但有一个正确的shebang:
#!/usr/bin/env/python
print "Monkey eats banana"
Run Code Online (Sandbox Code Playgroud)
跑了:
$ /path/to/script.sh
> Monkey eats banana
Run Code Online (Sandbox Code Playgroud)
正确运行,shebang 中的信息优先于扩展名。
一个(可执行)python脚本,具有正确的扩展名,但没有shebang(并且命令中没有语言信息):
print "Monkey"
Run Code Online (Sandbox Code Playgroud)
运行命令:
$ /path/to/script.py
> Error: no such file "Monkey"
Run Code Online (Sandbox Code Playgroud)
尽管有语言扩展,但运行不正确!
| 归档时间: |
|
| 查看次数: |
67000 次 |
| 最近记录: |