问题描述
我尝试使用谷歌搜索,但发现只有其他软件包可以处理此问题(出于各种原因,我希望避免使用该软件包)。
在Lua5.3中,是否有某种方法可以仅使用标准库来递归地解决符号链接?
我正在寻找等同于以下内容的东西:
lua -lfs -e 'print(fs.realink("/proc/self/exe"))'
...只有我的目标上没有“ fs”(和必需的“ path”)。
仅使用标准库在纯lua中实现此方法的任何方式?
解决方法
在Lua 5.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()
并非在所有Lua 5.3环境中都可用。因此,在使用它之前必须先进行检查。