の値を取得したいウィンドウ名tmux セッション内からの変数。
showenv '#{window_name}'
エラーが発生する
不明な変数: #{window_name}
変数名のその他の指定形式:#window_name または {window_name}一重引用符または二重引用符で囲むと、同じエラーが発生します。
どうすればその値を取得できますか?
答え1
「showenv」は動作しません。これらは環境変数ではないからです。(似たようなものかもしれませんがシェルスクリプトで実際には、それらは完全に別の世界に存在しており、シェルは環境変数をシェル変数であると仮定しているだけです。) また、どちらでもないも#
も{…}
変数名の一部ではありません。どちらも展開自体のみを示します。
すべてを一覧表示するフォーマット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.