Luci.sys.exec() 函数在添加变量时显示语法错误

我正在尝试使用 luci.sys.exec() 函数打印特定接口的 IP 地址。我的要求是添加一个包含接口名称的变量,例如:eth0 或 eth1。

执行的代码为:

local interfacename= "eth0"
currentInterfaceIpAdd = luci.util.trim(luci.sys.exec("ifconfig " ..interfacename.." | grep 'inet' | awk '{gsub("addr:","",$2);  print $2 }'"))

由于 gsub("addr:","",$2) 中的双引号也观察到了错误。但单引号会返回空值。在命令行中使用静态接口名称的相同命令可以正常工作。

点赞