Easier Terminal pasting in Ubuntu

Jan 4, 2015 Ubuntu

Everyone knows about the traditional clipboard where you explicitly copy the text selection using the application’s Copy command, but few know that there is a second called the primary selection that always holds the current text selection i.e. you don’t have to copy to it.

This reduces select->copy->paste to select->paste which I find incredibly helpful as I spend much of my computer time inside a terminal am constantly copying and pasting text.

You can paste the primary selection by clicking the middle button on the mouse. The Terminal application also assigns the Shift+Insert keyboard shortcut to paste the primary selection.

So, if you’re in the Terminal and want to paste the text selection to the cursor just middle-click the mouse or press Shift+Insert (a lot less tedious than Ctrl+Shift+C plus Ctrl+Shift+V).

Here’s another tip: Use xclip(1) to copy and paste between the terminal and Desktop applications (first you’ll need to install xclip with sudo apt-get install xclip).

Example usage:

cat pages.html | xclip -sel clip  # Copy file to clipboard.
xclip -sel clip -o > foo.txt      # Write clipboard to file.

By default xclip(1) uses the primary selection (not the clipboard) so I’ve added the following alias in my ~/.bashrc file:

alias xclip='xclip -sel clip'

This makes working with the clipboard less verbose:

cat pages.html | xclip    # Copy file to clipboard.
xclip -o > foo.txt        # Write clipboard to file.

Bonus tip: To select text column-wise hold down the Ctrl key then select the text with the mouse.

« Previous Next »