如何创建我可以执行的文件(具有执行权限)

时间:2014-05-29 07:00:38

标签: python file-permissions chmod

我正在使用open(file.py,"w")命令创建一个文件。 创建的file.py具有读写权限,但我无法区分它。

创建我之后可以运行的文件的最佳方法是什么?

创建文件并关闭文件后,我应该使用os.chmod(file.py,0777)吗?

1 个答案:

答案 0 :(得分:0)

查看open的文档,没有指定执行权限的属性。相反,正如您在问题中提到的那样使用chmod,但请避免使用魔术数字,除非您知道他们可能会做什么,否则不要向所有用户授予所有权限。

import os
from stat import S_IEXEC

file_name = "something_good.py"

with open(file_name, "w") as fp:
    write_something_to_file(fp)

os.chmod(file_name, S_IEXEC | os.stat(file_name).st_mode)