Home >System Tutorial >LINUX >How To Manage Clipboard From Command Line In Linux

How To Manage Clipboard From Command Line In Linux

Joseph Gordon-Levitt
Joseph Gordon-LevittOriginal
2025-03-14 10:55:09550browse

How To Manage Clipboard From Command Line In Linux

The clipboard of a Linux system is the area used to temporarily store copy-paste data. Once you copy text or other data, this data goes to the clipboard, which you can paste elsewhere. The clipboard saves only the last items you copied. Efficiently managing clipboards helps avoid mistakes and keep work organized. This guide details how to manage a clipboard in the Linux command line.

Table of contents

  • Install the clipboard management tool
    • Install xclip
    • Install xsel
  • Manage clipboards in Linux command line
      1. View clipboard content
      1. Clear the clipboard
      1. Copy the data to the clipboard
      1. Paste data from the clipboard
  • Clipboards in different choices
  • Advanced Usage
      1. Copy the file contents to the clipboard
      1. Redirect clipboard content to file
      1. Using multiple clipboards
      1. Clipboard durability
      1. Clipboard monitoring
  • Practical Examples
      1. Create a quick paste zone
      1. Timestamped clipboard to file
      1. Clipboard history
  • troubleshooting
  • Summarize

Clipboard management tools

Two common tools for managing clipboards in Linux are xclip and xsel. Both tools allow you to view, clear, and manipulate clipboard content.

Install the clipboard management tool

Install xclip

Xclip and Xsel are available in the default repository of many Linux distributions. So you can install them using the default package manager.

For example, you can install xclip on Debian and Ubuntu systems using the following command:

 <code>sudo apt install xclip</code>

Install xsel

To install xsel, use the following command:

 <code>sudo apt install xsel</code>

Manage clipboards in Linux command line

1. View clipboard content

Using xclip :

To view the contents of the clipboard using xclip, use:

 <code>xclip -selection clipboard -o</code>

This command outputs the current content of the clipboard to the terminal.

Using xsel :

To view the contents of the clipboard using xsel, run:

 <code>xsel --clipboard --output</code>

Or, just:

 <code>xsel --clipboard</code>

This command displays the current contents of the clipboard.

2. Clear the clipboard

Using xclip :

To clear the clipboard using xclip, use:

 <code>xclip -selection clipboard /dev/null</code>

This command clears the clipboard.

Using xsel :

To clear the clipboard with xsel, run:

 <code>xsel --clipboard --clear</code>

This command effectively clears clipboard contents.

3. Copy the data to the clipboard

Using xclip :

To copy data to the clipboard using xclip, you can echo the data and pipe it to xclip. For example:

 <code>echo "Hello, OSTechNix Users!" | xclip -selection clipboard</code>

This command copies "Hello, OSTechNix Users!" to the clipboard.

Using xsel :

To copy data to the clipboard using xsel, you can use a similar method:

 <code>echo "Hello, OSTechNix Users!" | xsel --clipboard</code>

This command also copies "Hello, OSTechNix Users!" to the clipboard.

4. Paste data from the clipboard

Paste the data the same as viewing. I have included this for ease of understanding.

Using xclip :

To paste clipboard content using xclip, you can run:

 <code>xclip -selection clipboard -o</code>

This command outputs clipboard contents, which you can redirect or use in scripts.

Using xsel :

To paste clipboard contents using xsel, run:

 <code>xsel --clipboard --output</code>

This command displays clipboard contents.

Clipboards in different choices

Unlike Windows, which usually has only one clipboard, Linux supports multiple clipboard selections. They are:

  • PRIMARY (selected text)
  • SECONDARY (Rare to use)
  • CLIPBOARD (Ctrl C, Ctrl V operation)

By default, xclip and xsel are selected using CLIPBOARD. You can specify different options as you want.

Using xclip :

  • Main choice: xclip -selection primary
  • Secondary selection: xclip -selection secondary
  • Clipboard selection: xclip -selection clipboard

Using xsel :

  • Main choice: xsel --primary
  • Secondary choice: xsel --secondary
  • Clipboard selection: xsel --clipboard

Advanced Usage

1. Copy the file contents to the clipboard

To copy the file contents to the clipboard, you can use:

Using xclip :

 <code>xclip -selection clipboard </code>

Using xsel :

 <code>xsel --clipboard </code>

2. Redirect clipboard content to file

To save clipboard contents to a file, use:

Using xclip :

 <code>xclip -selection clipboard -o > output.txt</code>

Using xsel :

 <code>xsel --clipboard --output > output.txt</code>

3. Use multiple clipboards

Copy the content to PRIMARY Select:

 <code>echo "Primary Selection" | xclip -selection primary</code>

Copy the content to SECONDARY Select:

 <code>echo "Secondary Selection" | xclip -selection secondary</code>

4. Clipboard persistence

By default, xclip exits immediately, which may result in lost clipboard content. To keep it running:

 <code>echo "Persistent clipboard" | xclip -selection clipboard -loops 0</code>

This will keep xclip running until you terminate it manually.

5. Clipboard monitoring

To continuously monitor clipboard changes:

 <code>watch -n 1 "xclip -selection clipboard -o"</code>

This command will display clipboard contents once a second.

Practical Examples

1. Create a quick paste area

 alias pb="xclip -selection clipboard"
cat file.txt | pb

Now you can quickly copy the file contents to the clipboard using cat file.txt | pb .

2. Timestamped clipboard to file

 xclip -selection clipboard -o > clipboard_$(date %Y%m%d_%H%M%S).txt

This saves the current clipboard contents to a file with the current timestamp.

3. Clipboard history

To maintain a simple clipboard history:

 echo "$(xclip -selection clipboard -o)" >> ~/.clipboard_history

Add this to your .bashrc or create a cron job to save clipboard contents regularly.

troubleshooting

  1. If the xclip or xsel commands fail, make sure you run them in an X11 session.
  2. For headless servers, you may need to use a virtual framebuffer, such as Xvfb.
  3. If the clipboard content is accidentally lost, check if any clipboard manager is interfering.

Summarize

Using tools like xclip and xsel, it is very easy to manage your clipboard in the Linux command line. You can easily view, clear, copy and paste clipboard content. Additionally, you can handle different clipboard selections and use file contents.

Mastering the xclip and xsel commands will help you manage your clipboard effectively and prevent accidental pasting. In addition, mastering clipboard management in the Linux command line can increase productivity and enable powerful scripting capabilities.

While xclip and xsel are the main tools, many desktop environments also offer their own clipboard managers and have other features.

Remember that clipboard operations in Linux are usually associated with X server sessions. For system-wide or cross-session clipboard management, consider using a dedicated clipboard manager application.


Featured image from Mohamed Hassan by Pixabay.

The above is the detailed content of How To Manage Clipboard From Command Line In Linux. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn