我有这个命令正确构建要导出的变量:
dbus-daemon --session --fork --print-address | awk -F"dbus-" '{ print $2 }' | awk -F",guid=" '{print ("export DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-" $1 ",guid=" $2)}'
输出是(正确):
export DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-YaRPQ2SYD3,guid=fa6a614c14fa3a891db3ebca5467b08f
但我无法将结果导出到 env。
我该怎么做?顺便说一句,我认为有一个更有效的 awk 命令来做到这一点。
尝试这样做:
var$(dbus-daemon --session --fork --print-address | awk -F"dbus-" '{ print $2 }' | awk -F",guid=" '{print ("export DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-" $1 ",guid=" $2)}')
echo "$var"
已解决。
export DBUS_SESSION_BUS_ADDRESS=$(dbus-daemon --session --fork --print-address | awk -F"dbus-" '{ print $2 }' | awk -F",guid=" '{print ("unix:abstract=/tmp/dbus-" $1 ",guid=" $2)}')
供将来参考