我最近遇到了陣陣,这似乎是一个很棒的小工具,但有一件事我遇到了麻烦:给定每行有多个字段的输入,如何配置它在按下时仅返回特定字段enter
?该accept
操作是键的默认绑定enter
,不接受任何参数...您不能使用--bind enter:accept(1)
或类似的东西。
--nth
和选项--with-nth
会影响搜索(--nth
)或显示(--with-nth
)的字段,但不会影响返回的内容。
例如,如果我运行如下命令:
ps -fe | fzf --some-options...
我想按下enter
如下所示的一行:
root 2067 1 0 08:41 ? 00:00:00 /usr/sbin/gdm
仅在标准输出上发出2067
。
fzf
唯一的选择是使用另一个工具(例如)对输出进行后处理吗awk
?
答案1
答案是测试流给了我一个很好的提示,并且我找到了解决方案become()
。
ps -fe | fzf --bind 'enter:become(echo {2})'
ps -fe | fzf -m --bind 'enter:become(echo {+2})'
答案2
ps -fe | fzf --bind 'enter:execute(echo {2})+abort'
这给了你第二个字段
或进行多选:
ps -fe | fzf -m --bind 'enter:execute(echo {+2})+abort'