当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 关于文件头 #!/usr/bin/env python 和 #!/usr/bin/python
帖子发表于 : 2009-07-30 14:17 

注册: 2009-03-24 9:55
帖子: 19
送出感谢: 0 次
接收感谢: 0 次
首先向大家问好,又来麻烦大侠们了。 :em06

请问py 文件头上的 #!/usr/bin/env python 和 #!/usr/bin/python 这种注释有学名吗?想去查查为什么要写这个。
另外,上面这两种写法除了字母不同,其它完全一样吗?


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 关于文件头 #!/usr/bin/env python 和 #!/usr/bin/python
帖子发表于 : 2009-07-30 14:19 

注册: 2008-09-06 2:00
帖子: 418
送出感谢: 0 次
接收感谢: 0 次
linux下所有脚本文件只有一个类型 "文本"

linux下文件的执行与文件名没有关系


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 关于文件头 #!/usr/bin/env python 和 #!/usr/bin/python
帖子发表于 : 2009-07-30 14:23 

注册: 2009-03-24 9:55
帖子: 19
送出感谢: 0 次
接收感谢: 0 次
果然,测试了一下。连 emacs 都是首先根据这个注释得到文件类型

另外请问这两种写法那种好点:
#!/usr/bin/env python

#!/usr/bin/python


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 关于文件头 #!/usr/bin/env python 和 #!/usr/bin/python
帖子发表于 : 2009-07-30 14:30 

注册: 2009-03-24 9:55
帖子: 19
送出感谢: 0 次
接收感谢: 0 次
google 到结果了,谢谢 soiamso 的指点。
結果今天在使用的時候才明白:
bash 有的時候會放在不是 /usr/bin 底下,所以下 env bash 可以給出如果 bash 不在 /usr/bin/ 底下的情況,還能使用 bash 做 interpreter。
同樣的情況也會發生在 php/pike 的身上。

像是有的時候 php cli 不是自已裝的,script 就會寫在
#!/usr/bin/php ,可是這個 script 拿到別台機器 php cli 是放在 /usr/local/bin/ 底下的就出問題啦。
所以寫做 #!/usr/bin/env php 就可以帶來一種安全的便利。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 4 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译