我想得到一个值窗口名称tmux 会话中的变量。
showenv '#{window_name}'
给出错误
未知变量:#{window_name}
变量名称的任何其他指定形式:#window_name 或 {window_name}用单引号或双引号引用都会出现同样的错误。
我怎样才能获得它的价值?
答案1
“showenv” 不起作用,因为这些根本不是环境变量。(虽然它们可能是类似的东西在 shell 脚本中,它们实际上生活在完全不同的世界中,shell 只是假装环境变量是 shell 变量。)另请注意两者都不和#
都不{…}
是变量名的一部分;它们都只表示扩展本身。
列出全部格式变量,您可以使用tmux display-message -a
或者只阅读 tmux 手册页中“FORMATS”部分提供的列表。
$ tmux display-message -a
alternate_on=0
alternate_saved_x=0
alternate_saved_y=0
buffer_mode_format=#{buffer_size} bytes (#{t:buffer_created})
client_control_mode=0
要从命令行测试扩展,请使用tmux display-message [-p] <text>
:
$ tmux display-message -p "This is #{window_name} in #{session_name}."
This is bash in 0.