Tmux是否支持任何形式的命令替换来设置选项的值?

问题描述

考虑以下default-shell的硬编码值:

set -g default-shell /usr/local/bin/bash

Tmux是否支持任何形式的命令替换设置选项,例如:

set -g default-shell "$(which bash)"

我已经考虑过if-shellrun-shell,但都不适合命令替代之类的目的。

解决方法

您可以使用run-shell,例如:

run 'tmux set -g default-shell "$(which bash)"'

或者对于default-shell,您可以使用SHELL。在.tmux.conf中,您可以使用$SHELL,也可以使用set -gF default-shell "#{SHELL}"之类的格式。