繁体   English   中英

权限在Ubuntu中被拒绝

[英]Permission denied in ubuntu

我有以下Lua代码:

local f = io.popen("/home/mohammad/LUA", "r")
if f then
    print(f:read("*a"))
else
    print("failed to read")
end

当我在Ubuntu中执行它时,出现错误:

mohammad@ubuntu:~$ lua LUA/project.lua
sh: 1: /home/mohammad/LUA: Permission denied

这是文件权限:

-rwxrwxrwx 1 mohammad mohammad 1185 Feb  3 01:56 LUA/project.lua*

问题是什么? 我该如何解决?

你在做

lua LUA/project.lua

如果project.lua/home/mohammad/LUA则使用

io.popen("/home/mohammad/LUA", "r")

您试图弹出 (打开)文件夹。 但是Lua参考手册中的 popen文档说

在一个单独的进程中启动程序prog,并返回一个文件句柄,可用于从该程序读取数据

文件夹不是一个过程,因此无法使用。

如果您打算使用io.open,则在文件夹存在的情况下调用将成功,并且在Linux上返回为非零(Linux和Windows之间的某些区别之处在于为什么此lua脚本无法打开Windows子目录? )。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM