Copy to Clipboard from Command Line

By  on  

If you've ever been debugging with a fellow developer, you'll hear "OK, execute that and let me know what it says".  In this case, you can either manually copy the output and instant message the text over to them, or you can write the output to file with >> , open the file, manually copy the contents, and paste it into IM.  I experience this for a few hours recently and it was way to much work!  Shouldn't there be a way to quickly place an execution's output directly into the clipboard just to save some time?  You can with pbcopy!

Copy stdout to Clipboard

You'll use a single pipe to transfer the stdout result into the clipboard:

# command | pbcopy
hg diff | pbcopy

The git diff information is copied to the clipboard in this example; now you can show your colleague what you've changed.

Copy File Contents to Clipboard

In the case of copying file contents into the clipboard, pbcopy goes first:

# pbcopy < file.ext
pbcopy < circle.yml

The complete file contents are instantly copied to the clipboard for easy sharing.

Pasting to File

So what if you want to paste the clipboard contents into a new or existing file?  Use pbpaste:

#pbpaste > file.txt
pbpaste > commands.txt

The clipboard contents will be placed into the given file.

pbcopy will be a big timesaver for me moving forward.  Manually copy and pasting information is with the mouse or trackpad is inconvenient and time-consuming.  These types of command line techniques can make us more proficient, skilled developers!

Recent Features

  • By
    Convert XML to JSON with JavaScript

    If you follow me on Twitter, you know that I've been working on a super top secret mobile application using Appcelerator Titanium.  The experience has been great:  using JavaScript to create easy to write, easy to test, native mobile apps has been fun.  My...

  • By
    Responsive Images: The Ultimate Guide

    Chances are that any Web designers using our Ghostlab browser testing app, which allows seamless testing across all devices simultaneously, will have worked with responsive design in some shape or form. And as today's websites and devices become ever more varied, a plethora of responsive images...

Incredible Demos

  • By
    Adding Events to Adding Events in MooTools

    Note: This post has been updated. One of my huge web peeves is when an element has click events attached to it but the element doesn't sport the "pointer" cursor. I mean how the hell is the user supposed to know they can/should click on...

  • By
    WordPress-Style Comment Controls Using MooTools or jQuery

    WordPress has a nice little effect on the Admin Dashboard where it shows and hides the comment control links when you mouseover and mouseout of the record's container. Here's how to achieve that effect using MooTools or jQuery. The XHTML Notice that we place the links into...

Discussion

  1. Jason

    You may want to point out that pbcopy is Mac only.

    With Linux, you’ll need other tools like xclip.

  2. Mark Hargrove

    May want to mention this is an OS X thing, though I guess this is available as an add-on for Windows.

  3. Markus

    how to get/install pbcoppy? is it a mac thing?

    • Yann

      Yes, pbcopy and pbpaste are OS X commands.

      I’m sure it’s possible to find alternatives for your OS of choice.

  4. Chris

    On Windows (both cmd and Powershell) simply use

    echo 1 | clip

  5. On linux I have this two aliases:

    alias c-c='xclip -sel clip'
    alias c-v='xclip -o -sel clip'
    
  6. echo 1 | clip
    is only for one line
    for multiline u may do
    type file.txt | clip

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!