我是新来的Ubuntu ...我想经营我的第一个简单的Python程序“Hello World”的运行...在终端下面的命令后
1. chmod +x filename.py
2. ./filename.py
终端显示以下错误“ bash: ./filename.py: Permission denied
”我能为解决问题的有关我做的?
我是新来的Ubuntu ...我想经营我的第一个简单的Python程序“Hello World”的运行...在终端下面的命令后
1. chmod +x filename.py
2. ./filename.py
终端显示以下错误“ bash: ./filename.py: Permission denied
”我能为解决问题的有关我做的?
你有你的Python文件的顶部适当的咒语? 例如,
#!/usr/bin/python
(或可替代#!/usr/bin/env python
)
只是为了澄清, chmod +x
不仅使文件的可执行文件,不运行它。
而我假设你的脚本看起来像什么比这更复杂:
#!/usr/bin/env python
print 'hello world'
一些可能性:
它说什么,如果你键入umask
? chmod +x
只会让一个可执行文件为你,如果你的umask不会阻止用户可执行位。 一个典型的umask如0022将不会阻止用户执行位,但像0122罐中的umask的。 (见的描述部分chmod(1)
以获得更多信息)。
要执行一个脚本,如Python脚本,你还需要读取权限。 尝试chmod u+rx filename.py
并再次执行脚本。
这也是远程可能,无论解释你与你的文件的开头的“hashbang”行的文件中规定值(例如#!/usr/bin/env python
)是不可执行的,但在我的经验,产生了不同的错误信息。
我处理我的新系统上同样的问题。
这是我第三次试图解决这个问题,和你的帖子出现在谷歌搜索结果的第一位。 我的职位是晚,但认为它会帮助其他用户同样的问题。
就我而言,它是关于分区表的设置。
检查你的/ etc / mtab中的文件如何Python脚本被存储的。 检查是否有一个条款:NOEXEC
NOEXEC是禁止分区下执行的标志。 默认情况下,它被设置以exec。 但是,有的时候,这种事情发生。
现在,人们在这里工作的罚款。