在Linux中使用Xclip和Xsel访问剪贴板内容

在本指南中,我们将学习什么是Xclip和Xsel程序,以及如何在Linux中使用Xclip和Xsel程序来操作和访问剪贴板内容。

什么是Xclip和Xsel程序?

Xclip 是X选择的命令行界面,即 剪贴板。 Xclip从一个或多个文件中读取数据,并将数据用作X选择,以将数据粘贴到X应用程序中。 如果未指定文件,它将从标准输入中读取数据。 它还可以将X选择打印到标准输出。

笔记:

在Linux中,剪贴板称为 “选择” 并且在三种类型的剪贴板中可用 X11 窗户系统。 它们是PRIMARY,SECONDARY和CLIPBOARD。 有关剪贴板的更多详细信息,请检查此 关联

Xsel 是命令行X11选择和剪贴板操作工具。 它用于在Linux和类似Unix的操作系统中访问X剪贴板和选择缓冲区。

借助Xclip和Xsel程序,我们可以轻松地模仿 pbcopy pbpaste Linux中的命令。 对于那些想知道的人,pbcopy和pbpaste用于操作剪贴板,它们仅在Mac OS X平台上才可用。

在Linux中安装Xclip和Xsel

Xclip和Xsel程序可在大多数现代Linux发行版的官方存储库中找到。

在Alpine Linux上,运行以下命令来安装Xclip和Xsel:

$ sudo apk add xclip xsel

要在Arch Linux及其类似Manjaro Linux的变体中安装Xclip和Xsel,请运行:

$ sudo pacman xclip xsel

在RHEL上,CentOS

$ sudo dnf install epel-release
$ sudo dnf install xclip xsel

在Fedora上:

$ sudo dnf xclip xsel

在Debian,Ubuntu,Pop!_OS,Linux Mint上:

$ sudo apt install xclip xsel

在openSUSE上:

$ sudo zypper install xclip xsel

使用Xclip和Xsel操作和访问剪贴板内容

即使Xclip和Xsel是相似的程序,并且执行相同的工作,但它们的用法也略有不同。 首先,让我们讨论Xclip程序的用法。

1. Xclip命令示例

Xclip处理“主要”,“次要”选择以及系统剪贴板。

1.1。 使用Xclip将数据复制到剪贴板

要使用Xclip将命令的输出复制到剪贴板,请运行:

$ echo "Welcome To OSTechNix" | xclip -selection clipboard

您也可以使用上述命令的简短版本:

$ echo "Welcome To OSTechNix" | xclip -sel c

使用Xclip将Linux命令的输出复制到剪贴板

这里, -sel 代表 -selectionc 代表 clipboard

按照上述命令,Xclip复制了 echo 命令,即“ Welcome To OSTechNix”,到达X11主要选择区域(即剪贴板)。 同样,您可以将任何其他命令的输出复制/发送到剪贴板。 这是另一个示例:

$ uname -r | xclip -sel c

在上面的示例中,我们将输出从stdin复制到剪贴板缓冲区。 那文件的内容呢? 这也是可能的。

使用以下命令将文件内容复制到剪贴板 Xsel 命令,运行:

$ xclip -selection clipboard < ostechnix.txt

或不久使用此:

$ xclip -sel c < ostechnix.txt

上面的命令将不会显示文件的内容。 相反,他们只会将文件内容复制到系统剪贴板。 您可以在此阅读有关将文件内容复制到剪贴板的更多详细信息。 关联

1.2。 使用Xclip将数据从剪贴板粘贴到控制台

现在我们知道如何将数据从标准输出和文件复制到剪贴板。 如何从剪贴板中检索复制的数据? 很简单! 运行以下命令以将系统剪贴板的内容粘贴到控制台:

$ xclip -o -sel clip

或者,

$ xclip -o -sel c

如果要粘贴内容 X11主要选择 在控制台区域中,运行:

$ xclip -o

1.3。 使用Xclip将数据从剪贴板粘贴到文件

除了显示(粘贴)剪贴板的内容外,您还可以将系统剪贴板或X11主选择区域的内容直接粘贴到如下文件中:

$ xclip -o -sel clip > output_file.txt

或者,

$ xclip -o > output_file.txt

">" 标记将覆盖输出文件的现有内容。 无需覆盖,您只需使用double将数据附加到输出文件中即可 ">>" 符号。

$ xclip -o >> output_file.txt

有关更多详细信息,请参见Xclip手册页:

$ man xclip

2. Xsel命令示例

默认情况下,除非您专门指定X选择,否则Xsel会对X PRIMARY选择进行操作。

2.1。 使用Xsel将数据复制到剪贴板

要将命令的输出复制到使用Xsel的剪贴板中,请运行:

$ echo "Welcome To OSTechNix" | xsel -ib

上面的命令从STDIN读取并保存到剪贴板。 仿佛 Ctrl + C

要将文件内容复制到剪贴板,请运行:

$ cat input_file.txt | xsel -ib

这里, i 代表输入和 b 代表剪贴板。

您还可以使用以下命令:

$ xsel --clipboard < input_file.txt

或者,短时间使用此:

$ xsel -b < input_file.txt

再次, -b 代表剪贴板。

使用Xsel将数据复制到剪贴板使用Xsel 2.2将数据复制到剪贴板。 使用Xsel将数据从剪贴板粘贴到控制台

在终端中粘贴或显示剪贴板的内容(相当于 Ctrl + V), 跑:

$ xsel -ob

这里, o 代表输出, b 代表剪贴板。

2.3。 使用Xsel将数据从剪贴板粘贴到文件

要将剪贴板的内容粘贴到文件中:

$ xsel -ob > output_file.txt

如果您不想覆盖输出文件的现有内容,只需使用double附加数据即可 ">>" 如下符号:

$ xsel -ob >> output_file.txt

如果要将X11主选择的内容粘贴到终端中(等效于鼠标中键单击),请使用 -p (主要选择)代替 -b (剪贴板):

$ xsel -op

2.4。 使用Xsel清除剪贴板

要清除剪贴板中的内容,请运行:

$ xsel -cb

有关更多详细信息,请参见Xsel手册页:

$ man xsel

希望这可以帮助。

剪贴板LinuxLinux基础Linux命令Linux操作方法Linux技巧xclipxsel

Sidebar