如何通过外部命令使用Conky变量?

如何通过外部命令使用Conky变量?

我正在尝试使用 函数为 Conky 截断用户名创建一个解决方法top user。使用id -nu $uid,我尝试了以下方法:

${exec id -nu ${top uid \1}}

这会导致“错误替换”错误。认为这可能是因为 top 函数发送的是字符串而不是整数,我尝试创建一个 lua 函数:

function conky_uid_to_name(uid)
    num = tonumber(conky_parse(uid))
    name = conky_parse('${exec id -nu ${num}}')
    return name
end

但这也永远不起作用,因为我无法让解析器看到我的变量。如何将变量发送到nameConky 正确解析的变量?我确信有一种更简单的方法可以做到这一点,但我没有找到很多 lua 示例,而且他们的文档也严重缺乏。

答案1

如果您不使用模板,那么您可以在顶部提供其结果后使用 eval 重新解析 exec:

${eval $${exec id -nu ${top uid 1}}}

请注意,$$停止正在运行的 exec,但${top 允许其运行。

相关内容