在 .tmux.conf 上调用的格式变量上使用字符串比较语句时,tmux %if %else %endif 语法出现错误

在 .tmux.conf 上调用的格式变量上使用字符串比较语句时,tmux %if %else %endif 语法出现错误

我正在尝试实现能够理解“tmux”中某个窗口何时高于或低于 10 的功能。

因此,我在我的 上使用了以下内容~/.tmux.conf,我在 tmux 会话中从不同的 Windows 获取资源。

%if '#{<:#{window_index},10}'
    display -p 'Window index is lower than 10'
%else
    display -p 'Window index is higher than 10'
%endif

我将其附加到我的 .tmux.conf 并从那些不同的窗口中获取它,但实际上的行为并不按预期。

大多数 Windows 都向我抛出“窗口索引大于 10”,出于某种原因,窗口索引应该是 1。但我认为这种模式不一致,因为我在其他会话中尝试了同样的操作,而所有 Windows 都向我抛出了 else 语句。

答案1

<>在 tmux 中执行细绳逐个字符进行比较(排序)。字符串2确实“大于”,10因为第一个字符2> 1(字符串的其余部分不需要比较)。

使用e运算符进行数字运算:

#{e|<:#{window_index},10}

相关内容