如何在 tmux 中轉儲內部會話變數?

如何在 tmux 中轉儲內部會話變數?

我想得到一個值視窗名稱tmux 會話中的變數。

showenv '#{window_name}'

給出一個錯誤

未知變數:#{window_name}

變數名稱的任何其他形式的規格:#視窗名稱或{視窗名稱}用單引號或雙引號引用會產生相同的錯誤。

我怎樣才能得到它的價值?

答案1

「showenv」不起作用,因為這些根本不是環境變數。 (雖然它們可能是相似的東西在 shell 腳本中,它們實際上生活在完全獨立的世界中,shell 只是假裝環境變數是 shell 變數。兩者都不the#或 the{…}不是變數名稱的一部分;它們都僅表示擴充本身。

列出所有格式變量,您可以使用tmux display-message -a或閱讀 tmux 手冊頁“格式”部分下提供的列表。

$ 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.

相關內容