DEV Community

Cover image for Copy & Paste - The Tricky Way on macOS Terminal
Tim Wong
Tim Wong

Posted on • Originally published at simcept.com

Copy & Paste - The Tricky Way on macOS Terminal

Every of us knows copy & paste by ⌘-C and ⌘-V. Today I want to introduce you the pbcopy and pbpaste commands, for macOS exclusively.

pbcopy

Imagine that you want to copy the content of a file that has more than 1,000 lines on the terminal.

One way is to cat /path/to/file, and use your mouse/trackpad to scroll and highlight the content, then press ⌘-C to copy. However, this seemingly simple task could be very annoying because scroll-and-highlight isn't so straight-forward sometimes.

A much simpler way is to pipe the output to pbcopy.

cat /path/to/file | pbcopy
Enter fullscreen mode Exit fullscreen mode

Now you can ⌘-V the copied content anywhere. 🥳

pbpaste

You can echo the copied content by pbpaste. For example, you can save the copied content into a file.

pbpaste > /path/to/file
Enter fullscreen mode Exit fullscreen mode

Or, process the copied content before saving it.

# Remove the empty lines
pbpaste | egrep -v '^$' > /path/to/file
Enter fullscreen mode Exit fullscreen mode

Or, process the copied content AND copy the new content with pbcopy.

pbpaste | egrep -v '^$' | pbcopy
Enter fullscreen mode Exit fullscreen mode

Summary

pbcopy and pbpaste is just a small trick, but very useful in my day-to-day work. Hope they could become your favourite commands too! 😎

Discussion (1)

Collapse
siddharthshyniben profile image
Siddharth

Nice! I use vim registers so I always forget this trick. Thanks for the brush up!