在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