【问题标题】:how do I create a file that I can execute (has execute permissions)如何创建可以执行的文件(具有执行权限)
【发布时间】:2014-07-18 14:52:53
【问题描述】:

我正在使用open(file.py,"w") 命令创建一个文件。 创建的file.py有读写权限,但是我不能执行。

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

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

【问题讨论】:

  • 您已经回答了您的问题。你为什么不试试呢?比在这里问要花的时间要少得多!
  • 如果文件名是字符串文字,则需要引号。
  • 我想看看是否有办法在一个命令中做到这一点。 open(file.py,attr) 是否有可执行文件的属性?
  • 别忘了添加合适的shebang

标签: python file-permissions chmod


【解决方案1】:

查看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)

【讨论】:

    猜你喜欢
    • 2013-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-15
    • 2011-10-22
    • 1970-01-01
    • 2011-12-27
    • 1970-01-01
    相关资源
    最近更新 更多