#!/bin/sh
if test -n "$1"; then
STDIN="${1}"
elif test ! -t 0; then
STDIN=$(cat)
else
echo 'Usage:'
echo ' c < /path/to/file'
echo ' c text-to-be-copied'
echo ' command | c'
exit 1
fi
qdbus org.kde.klipper /klipper setClipboardContents "$STDIN"
It's two tools: c and v for copy and paste respectively.
Say you want to copy an output of a command, say
grep -i 'abc' file.txt | sed 's/b/d/'
then you can easily add | c to the end to get:
grep -i 'abc' file.txt | sed 's/b/d/' | c
and this will copy to clipboard, specifically for KDE's clipboard manager, Klipper. If you wanted to see the help text for more ways to copy, you'd run c on its own
The benefit is the tool won't break between x11 and wayland, but the downsides are that it's tied to klipper, and you cant see more clipboard metadata, like mimetypes
If you only use wayland, i'd recommend using wl-clipboard, and alias c=wl-copy and alias v=wl-paste it's a better tool, imo.
Should you still want to use my lil snippet, you will need to create these files yourself, i suggest either in your $HOME/.local/bin/ or /usr/local/bin/. And don't forget to chmod +x them so they are executable.