__
____ / /_
/ __ \/ __ \
/ /_/ / /_/ /
/ .___/_.___/
/_/
A tiny wrapper combining pbcopy & pbpaste in a single command. Copy to
or paste from the macOS / OS X clipboard / pasteboards.
With no input, pb prints the current contents of the clipboard to stdout using the
pbpaste command. When input is passed via stdin or an argument, pb acts as
a wrapper for pbcopy, which in the simplest case means that it replaces the
clipboard contents with the input.
# save the string "Example text." to the clipboard
> pb "Example text."
# print the clipboard contents
> pb
Example text.
# save the string "Example piped text." to the clipboard
> echo "Example piped text." | pb
# print the clipboard contents
> pb
Example piped text.The contents of the pasteboards can be previewed in a pager with pb -p
/ pb --preview. The content will be displayed in the command set in
the $PAGER environment variable, or less if $PAGER is unset.
# display the contents of the clipboard in a pager
pb --preview
# display the contents of the clipboard in a pager, short option
pb -pmacOS has multiple pasteboards, with "general" as the default that is used
when no pasteboard is specified. The "general" pasteboard is also used in
Universal Clipboard. Other
pasteboards can be accessed with pb -pboard <name>. The other
available pasteboards are ruler, find, and font.
# save the string "example" to the "find" pasteboard
pb -pboard find "example"
# print the contents of the "find" pasteboard
pb -pboard find
# preview the contents of the "find" pasteboard
pb -pboard find --previewpb also includes a pb --clear flag to easily clear the macOS clipboard.
# clear the clipboard contents
> pb --clear
Pasteboards / Clipboard cleared.macOS refers to the clipboard as the pasteboard. The terms are largely synonymous can be used interchangably.
To install with Homebrew:
brew tap xwmx/taps
brew install pbTo install with npm:
npm install -g pb.shTo install with bpkg:
bpkg install xwmx/pbTo install manually, simply add the pb script to your $PATH. If
you already have a ~/bin directory, you can use the following command:
curl -L https://raw.github.com/xwmx/pb/master/pb \
-o ~/bin/pb && chmod +x ~/bin/pbA simple wrapper combining pbcopy & pbpaste in a single command.
Usage:
pb [-pboard {general | ruler | find | font}] [-Prefer {txt | rtf | ps}]
[-p | --preview]
pb <input> [-pboard {general | ruler | find | font}]
pb --clear
pb --version
pb -h | --help
Options:
--clear Clear the contents of all pasteboards.
-pboard Specify the pasteboard to copy to or paste from.
Default: general
-Prefer Specify what type of data to look for in the pasteboard first.
-p, --preview Display pasteboard content in $PAGER, or `less` if unset.
--version Print the current program version.
-h --help Show this screen.
Examples:
pb "Example text." Copy data specied with an argument.
echo "Example text." | pb Copy piped data.
pb Print contents of the clipboard / pasteboard.
pb -pboard find Print contents of the "find" pasteboard.
pb --preview Display the contents of the pasteboard in a pager.
More information:
Run `man pbcopy` or `man pbpaste`.
Home:
https://github.com/xwmx/pb
Clipboard / Pasteboard Developer Documentation:
- Pasteboard | Apple Developer Documentation Archive
- NSPasteboard | Apple Developer Documentation
- NSPasteboardName | Apple Developer Documentation
To run the test suite, install Bats and
run bats test in the project root.