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
    Create a Sheen Logo Effect with CSS

    I was inspired when I first saw Addy Osmani's original ShineTime blog post.  The hover sheen effect is simple but awesome.  When I started my blog redesign, I really wanted to use a sheen effect with my logo.  Using two HTML elements and...

  • By
    fetch API

    One of the worst kept secrets about AJAX on the web is that the underlying API for it, XMLHttpRequest, wasn't really made for what we've been using it for.  We've done well to create elegant APIs around XHR but we know we can do better.  Our effort to...

Incredible Demos

  • By
    New MooTools Plugin:  ElementFilter

    My new MooTools plugin, ElementFilter, provides a great way for you to allow users to search through the text of any mix of elements. Simply provide a text input box and ElementFilter does the rest of the work. The XHTML I've used a list for this example...

  • By
    Chris Coyier&#8217;s Favorite CodePen Demos II

    Hey everyone! Before we get started, I just want to say it's damn hard to pick this few favorites on CodePen. Not because, as a co-founder of CodePen, I feel like a dad picking which kid he likes best (RUDE). But because there is just so...

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!