When working on the command-line, it’s often useful to paste from the system clipboard to a command-line tool, or to copy output from the command-line into your system clipboard.
On macOS, pbcopy and pbpaste do this. On Linux, you can use xclip or
xsel.
If you have text in your clipboard you’d like to uppercase, a low-budget way of doing that is:
$ pbpaste | tr a-z A-Z
If you’d like to uppercase your clipboard in place, so you can paste the
uppercased text into some other app, piping it back to pbcopy does the trick:
$ pbpaste | tr a-z A-Z | pbcopy
On Linux, I use the xsel tool instead of
pbcopy/pbpaste:
$ xsel --output --clipboard | tr a-z A-Z | xsel --input --clipboard
xsel -ob is a synonym for xsel --output --clipboard, and xsel -ib is
short for xsel --input --clipboard, if you’re using these commands
frequently.
I use both macOS and Linux, so my personal scripts include a clip-copy script
that’s platform independent:
#! /bin/bash
if [[ $OSTYPE == linux-gnu ]]; then
    xsel --input --clipboard
else
    pbcopy
fi
and a clip-paste script:
#! /bin/bash
if [[ $OSTYPE == linux-gnu ]]; then
    xsel --output --clipboard
else
    pbpaste
fi