将conky对象传递给外部脚本

时间:2018-10-08 18:16:39

标签: bash parameters lua conky

我有一个conky对象,我想将其作为bash / lua脚本的参数传递。我该怎么办?

示例:

保守对象${tcp_portmon 1 61000 lport 0} 即第一个tcp连接的端口

脚本$ lsof -i :<PORT> | sed -n 2p | awk '{print $1}' 即找到具有该端口的进程

我尝试了什么(失败):

  • ${exec lsof -i :${tcp_portmon 1 61000 lport 0} | sed -n 2p | awk '{print $1}'}
  • ${exec echo $(lsof -i :${tcp_portmon 1 61000 lport 0} | sed -n 2p | awk '{print $1}')}
  • ${lua conky_proc_port ${tcp_portmon 1 61000 lport 0}},其中conky_proc_port仅输出参数

我该怎么做?

PS:供参考,here是Github问题的链接

1 个答案:

答案 0 :(得分:0)

将conky对象传递给lua函数的最好方法是...不传递对象。

相反,请使用lua函数中的lua API函数conky_parse评估字符串'${tcp_portmon 1 61000 lport 0}',然后根据需要处理结果。

或者,您可以将字符串'${tcp_portmon 1 61000 lport 0}'传递给lua函数,然后对传递的字符串使用conky_parse,而不是对字符串进行硬编码。

有关更多信息,请参见man conky的“ LUA API”部分。