有没有办法在 shell 中获取 byobu 窗口编号(或窗口名称)?
我希望相同的代码根据其运行的窗口表现出不同的行为:我正在考虑这样的事情(搜索的是 getByobuWindowNumber()):
$/bin/bash
windowName=getByobuWindowNumber()
if ($windowName=="1")
then
infile="infile1.txt"
fi
if ($windowName=="2")
then
infile="infile2.txt"
fi
do.something($infile)
提前致谢。
马蒂亚斯
答案1
与此同时,我找到了一个答案。我希望这对其他寻求此主题帮助的人有所帮助:
可以通过环境变量获取会话编号TMUX_PANE
;只需通过获取即可windowName=$TMUX_PANE
;就是这样:)。集成在上面的代码示例中:
#!/bin/bash
windowName=$TMUX_PANE
if [[ $windowName == "%1" ]]
then
infile="infile1.txt"
fi
if [[ $windowName == "%2" ]]
then
infile="infile2.txt"
fi
do.something($infile)
顺便说一句,有一个环境变量$BYOBU_WINDOW_NAME
。但在我的系统上它没有正确设置(所有窗口中都一样,尽管我自己给窗口起了不同的名字)。但上面的解决方案无论如何都有效......