减少对剪贴板内容的使用

减少对剪贴板内容的使用

我复制了一些文本并想使用 进行搜索less。我想知道如何直接使用less剪贴板内容,而无需先将其保存到文件中或进行保存echo等。

答案1

使用剪辑或者谢尔(应该可以在任何 Linux 发行版和 BSD 端口上使用)。

对于使用鼠标选择某些内容时自动复制的 X11 选择:

xsel | less
xclip -o | less

对于显式复制的 X11 剪贴板(通常使用Ctrl+ C):

xsel -b | less
xclip -o -selection c | less

在 macOS 上,使用pbpaste.

pbpaste | less

将文件的内容复制到剪贴板而不显示其内容了解更多信息。

答案2

这是一种技术含量较低的方法:

你复制了一些东西,对吗?所以如果你按 Shift-Insert 或其他什么键,它就会粘贴,对吗?

$ cat | less

现在按Shift+Insert然后按Ctrl+C

瞧!现在,您可以上下滚动并搜索并执行任何您想要的操作less,对您粘贴的剪贴板文本进行操作。

请注意,在这种情况下, Ctrl+D将无法终止输入cat。我不知道为什么,但它在 FreeBSD 和 Ubuntu 上都没有。

答案3

在 X11 下,由于剪贴板的集成方式,这将不起作用。

首先,使用了两个剪贴板:

  1. 您选择的东西
  2. 使用热键(如 ctrl + c)复制的内容

程序可以使用这两个剪贴板或其中一个。

整个过程有点像这样:

Client A                    X Server                    Client B
----------------------------------------------------------------

(1) |  I own selection FOO!    |
    |  ------------------->    |


                               |  Write sel. FOO to BAR!  | (2)
                               |  <---------------------  |


    | Write sel. FOO to BAR!   |
    | <---------------------   |


    |     Here is FOO.
    | -------------------------:----------------------->  |


                                     Okay, got it.        |
    | <------------------------:------------------------  |

来源

如果您想在终端工作流程中使用剪贴板内容,您可以使用类似剪辑并将它们别名为您选择的命令。

相关内容