io和lfs似乎都没有选择来检查这个。我需要使用此功能来模拟执行此检查的一些代码。
答案 0 :(得分:0)
似乎permissions
返回的表中有一个未记录的lfs.attributes()
字段。感谢@siffiejoe指出这一点,在我阅读代码时没有看到它。
另一种方法当然是尝试从文件中读取,这将始终有效,但可能会更慢。
您也可以尝试打开文件并在其上设置(当然是临时的)读锁定。但不确定Lua中文件锁定的可移植性。
注意:检查文件是否可读然后做某事可能会因竞争条件而中断;您的支票和以下操作之间的文件权限可能会发生变化。