解析lua中的符号链接

解析lua中的符号链接,lua,symlink,symlink-traversal,Lua,Symlink,Symlink Traversal,我试着用谷歌搜索,但我发现只有额外的软件包处理这个问题(出于各种原因,我希望避免这样做) 在Lua5.3中,是否有某种方法可以仅使用标准库来解析符号链接(可能是递归的) 我要找的东西相当于: lua -lfs -e 'print(fs.realink("/proc/self/exe"))' 。。。只是我的目标上没有“fs”(和必需的“path”) 在纯lua中是否只使用标准库来实现这一点?在Lua5.3中,我使用 cmd=function(cmd) cmd=io.popen

我试着用谷歌搜索,但我发现只有额外的软件包处理这个问题(出于各种原因,我希望避免这样做)

在Lua5.3中,是否有某种方法可以仅使用标准库来解析符号链接(可能是递归的)

我要找的东西相当于:

lua -lfs -e 'print(fs.realink("/proc/self/exe"))'
。。。只是我的目标上没有“fs”(和必需的“path”)

在纯lua中是否只使用标准库来实现这一点?

在Lua5.3中,我使用

cmd=function(cmd)
cmd=io.popen(cmd, 'r')
cmd = cmd:read('a+')
return cmd
end
…用于在Lua变量中存储外部命令的输出。一个使用它的例子

erg=cmd('file /proc/self/exe|grep -o -E "[/a-z]{1,512}$"')
print(erg)

但是由于安全原因,
io.popen()
不适用于所有Lua5.3环境。因此,在使用它之前,您必须检查它。

在Lua5.3中,我使用

cmd=function(cmd)
cmd=io.popen(cmd, 'r')
cmd = cmd:read('a+')
return cmd
end
…用于在Lua变量中存储外部命令的输出。一个使用它的例子

erg=cmd('file /proc/self/exe|grep -o -E "[/a-z]{1,512}$"')
print(erg)


但是由于安全原因,
io.popen()
不适用于所有Lua5.3环境。因此,在使用它之前,您必须检查它。

path=io.popen('readlink“…您的链接…”):read()
@EgorSkriptunoff:这很有效。如果你回答我,我就接受。谢谢。
path=io.popen('readlink“…您的链接…”):read()
@EgorSkriptunoff:这很有效。如果你回答我,我就接受。谢谢