-f
我阅读了手册页,但在使用时找不到如何使用tmux list-panes
。它似乎是一个过滤器,我认为这在某种程度上像 grep 一样工作?
有谁知道 -f 是如何工作的?
答案1
该-f
选项已经存在于其他一些命令中,例如choose-tree
给出了有关其工作原理的提示。它采用格式字符串,对于每个窗格,如果其计算结果为 true(即非 0 也非空),则列出该窗格。
例如,如果您有 2 个窗格,其中之一处于树模式:
$ tmux list-panes -F '#{pane_id} >#{pane_mode}<'
%0 ><
%1 >tree-mode<
那么你可以通过匹配过滤器仅显示树模式下的一个,#{m:a,b}
将 glob a 与字符串 b 匹配,如果它们相同则为 true:
$ tmux list-panes -F '#{pane_id} >#{pane_mode}<' -f '#{m:tree-mode,#{pane_mode}}'
%1 >tree-mode<
要将选择反转为仅显示不在树模式下的窗格,请使用#{?e,a,b}
if 字符串 e 为 true 时选择字符串 a,否则选择 b:
$ tmux list-panes -F '#{pane_id} >#{pane_mode}<' -f '#{?#{m:tree-mode,#{pane_mode}},0,1}'
%0 ><