如何在Lua中检查字符串是否为可执行文件的路径?看来,标准库和令人惊讶的LuaFileSystem都没有提供这种方法。如何检查文件在Lua中是否可执行?
2
A
回答
6
LuaFileSystem具有返回表的lfs.attributes()函数。相反,它有一个名为“mode”的键,其中包含一个描述节点(文件,目录,套接字等)的“类型”的字符串。
虽然它没有在手册中列出:http://keplerproject.github.io/luafilesystem/manual.html ...这似乎是该模块的规范参考...该表中还有一个“权限”键。我想你可以解析它的任何“x”字符。
我发现这个有:
#!lua
local lfs = require 'lfs'
attr = lfs.attributes('./some_file')
for name, value in pairs(attr) do
print (name,value)
end
+2
哦,这就是我阅读文档而不是在REPL中进行实验的结果。谢谢! – 2013-05-09 17:12:38
4
你是什么操作系统? – 2013-05-09 16:30:04
使用'loadfile()'并检查它是否返回错误? – hjpotter92 2013-05-09 16:43:22
'loadfile'用于加载Lua代码,不用于检查文件是否是二进制可执行文件,@ hjpotter92。 – 2013-05-09 17:10:54