在本指南中,我们将了解 Xclip 和 Xsel 程序是什么,以及如何在 Linux 中使用 Xclip 和 Xsel 程序操作和访问剪贴板内容。
什么是 Xclip 和 Xsel 程序?
剪辑 是 X 选择的命令行界面,即 剪贴板. Xclip 从一个或多个文件中读取数据并将数据作为 X 选择提供,以便将数据粘贴到 X 应用程序中。 如果没有指定文件,它会从标准输入中读取数据。 它还可以将 X 选择打印到标准输出。
笔记:
在 Linux 中,剪贴板被称为 “选择” 并且有三种类型的剪贴板可用 X11 窗口系统。 它们是主要的、次要的和剪贴板。 有关剪贴板的更多详细信息,请查看此 关联.
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、AlmaLinux 和 Rocky Linux 上:
$ 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 处理 PRIMARY、SECONDARY 选择以及系统剪贴板。
1.1。 使用 Xclip 将数据复制到剪贴板
要使用 Xclip 将命令的输出复制到剪贴板,请运行:
$ echo "Welcome To OSTechNix" | xclip -selection clipboard
您还可以使用上述命令的简短版本:
$ echo "Welcome To OSTechNix" | xclip -sel c
这里, -sel
代表 -selection
和 c
代表 clipboard
.
按照上面的命令,Xclip 复制了从 echo
命令,即“欢迎使用 OSTechNix”,到 X11 主要选择区域(即剪贴板)。 同样,您可以将任何其他命令的输出复制/发送到剪贴板。 这是另一个 example:
$ 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命令示例
默认情况下,Xsel 对 X PRIMARY 选择进行操作,除非您专门指定 X 选择。
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
表示剪贴板。
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
(PRIMARY 选择)改为 -b
(剪贴板):
$ xsel -op
2.4. 使用 Xsel 清除剪贴板
要清除剪贴板的内容,请运行:
$ xsel -cb
有关详细信息,请参阅 Xsel 手册页:
$ man xsel
结论
在本指南中,我们通过 Linux 和类 Unix 操作系统中的示例讨论了如何使用 Xclip 和 Xsel 程序操作和访问剪贴板内容。
希望这可以帮助。