GPASTE-CLIENT(1)
π NAME π
Okay so gpaste-client is the CLI bestie for GPaste β a lightweight clipboard manager for the Gnome desktop. This page lives in the General Commands Manual, and it is honestly giving βclipboard management but make it iconicβ energy π
β¨
β¨ SYNOPSIS β¨
gpaste-client [options...] [command [arguments...]]
command | gpaste-client [add | add-password <name> | replace <uuid>]
πΈ DESCRIPTION πΈ
Bestie, GPaste is a modular clipboard management system with a fully DBus-based daemon, a CLI client and a gtk+ tray icon. The whole vibe is βclipboard but organized.β π«Ά
With no command, gpaste-client adds what is piped into it, or displays the history when nothing is. add, add-password and replace take their last argument from what is piped when it is not given. No other command reads what is piped. With no command, --help and --version do not read it either, and neither do the options that change how the history is displayed β those then display it without adding what is piped: --favourites, --oneline, --raw, --reverse, --use-index or --zero.
A command that talks to the daemon refuses any argument, option value or piped text that is not valid UTF-8, file paths included. It starts the daemon when none is running, and waits for it to serve a history β while it settles its storage, questions to the user included, for up to two minutes β before it calls it, failing at once on a GPaste 45 or 50 an update left running. Only daemon-reexec and migrate, which have to reach such a daemon, call it without waiting.
Printed on a terminal, an itemβs control characters show as U+FFFD rather than reach the terminal, which an escape sequence would have act on it; line breaks and tabs stay. Written to a file or a pipe, items are as they are. No cap, fr fr. πβ¨
π COMMANDS π
gpaste-client [history]β Display the history with indexes. πgpaste-client history-sizeβ Display the size of the current history.gpaste-client search <pattern>β Display the items of the history matching<pattern>, a Perl-compatible regular expression matched whatever the case; a password is matched by its name. Quote what the shell or the expression would read otherwise, as ingpaste-client search 'c++'.gpaste-client get-historyβ Get the name of the current history.gpaste-client backup-history [<history>] <backup>β Back up<history>, the current one when not given, as<backup>.gpaste-client switch-history <name>β Switch to the history<name>, starting a new one when there is none.gpaste-client delete-history [<name>]β Delete the history<name>, the current one when not given.gpaste-client list-historiesβ List available histories.gpaste-client add [<text>]β Add the text into the history. Without<text>, the text is everything read from stdin.gpaste-client add-password <name> [<password>]β Add the name / password pair to the history. Without<password>, the password is everything read from stdin bar the one newline ending its line: given as an argument, it would be kept in the shellβs history file and shown to every user of the system while the command runs. A store printing more than the password, aspass showdoes with an entryβs other lines, is cut to its first line first:pass show bank | head -n 1 | gpaste-client add-password bank. πgpaste-client delete-password <name>β Delete the password<name>.gpaste-client make-password <uuid> <name>β Make the item matching<uuid>from the history a password named<name>. Handed the uuid of an item that is already a password, it renames that one instead of creating a second one, and leaves its timeout alone unless--timeoutsays otherwise.gpaste-client get <uuid>β Get the item matching<uuid>from the history.gpaste-client select <uuid>β Put the item matching<uuid>from the history into the clipboard.gpaste-client replace <uuid> [<contents>]β Replace the contents of the item matching<uuid>from the history with the provided one. Without<contents>, they are everything read from stdin.gpaste-client strip-rich-text <uuid>β Drop the rich text flavours of the item matching<uuid>, keeping the plain text it shows. A text item is the only kind this takes: a uris itemβs special mimes are how a file list is handed over, not another spelling of its text. Editing a text item, or turning one into a password, drops its rich text too.gpaste-client merge [--decoration|-d <string>] [--separator|-s <string>] <uuid> β¦ <uuid>β Merge the items matching the uuids from the history and put the result in the clipboard.
If foo, bar and baz are respectively uuids 5cb227f9-857d-490b-8ea1-f5f33f59f04e, b4a7aa02-ef9a-4c29-b951-ebbdb4ed279b and 99da883b-0544-4cb4-92dd-733420a9db6d in history and you run:
gpaste-client merge -d '"' -s ','
5cb227f9-857d-490b-8ea1-f5f33f59f04e
b4a7aa02-ef9a-4c29-b951-ebbdb4ed279b
99da883b-0544-4cb4-92dd-733420a9db6d
You will end up with "foo","bar","baz" in your clipboard. Slay. π
gpaste-client delete <uuid>β Delete the item matching<uuid>from the history.gpaste-client favourite <uuid>β Pin the item matching<uuid>. A pinned item is never dropped automatically: neither the history size limit nor the memory one may evict it, so the history grows past its cap rather than let one go. Emptying or deleting the history, or deleting the item by uuid, still drops it. πgpaste-client unfavourite <uuid>β Unpin the item matching<uuid>, putting it back under both caps. It may be evicted straight away, if that is what was keeping the history over one of them.gpaste-client file <path>β Put the content of the file at<path>into the clipboard.command | gpaste-clientβ Put the output of the command into the history.gpaste-client empty [<name>]β Empty the history<name>, the current one when not given.gpaste-client startβ Start tracking clipboard changes.gpaste-client stopβ Stop tracking clipboard changes.gpaste-client upload <uuid>β Upload the item matching<uuid>to a pastebin service, and print the url it landed at; only a text item can be uploaded, any other is refused.gpaste-client upload-and-copy <uuid>β Upload the item matching<uuid>to a pastebin service, and print the url it landed at, asuploaddoes, a text item alone; the daemon then puts the url where it can be pasted, as the keyboard shortcut does: in the history, or on the clipboard alone should the history refuse it.gpaste-client uiβ Launch the graphical tool.gpaste-client daemon-reexecβ Re-execute the daemon, for example after upgrading GPaste.gpaste-client migrateβ Migrate the history to a different storage backend.gpaste-client change-passphraseβ Change the passphrase of the encrypted history, re-encrypting it with the new one.gpaste-client doctorβ Check the history folder and every history, and put right what can be: restrict the folder and every folder in it to their owner, and encrypt the histories left under another passphrase with the one the history in use takes, which the daemon asks for theirs to do. Prints what it found and did, and exits with a failure status when anything is left wrong. π©Ίβ¨gpaste-client preferencesβ Launch the configuration tool.gpaste-client versionβ Display the version.gpaste-client daemon-versionβ Display the daemon version.gpaste-client helpβ Display the help.gpaste-client aboutβ Display the about dialog.gpaste-client show-historyβ Make the GNOME Shell extension display the history.
π¦ OPTIONS π¦
-h,--helpβ Display the help, ashelpdoes.-v,--versionβ Display the version, asversiondoes.-f,--favouritesβ Only display the pinned items, when listing the history or a search.-i,--use-indexβ Address items by their index rather than their uuid: their position in the history, starting at zero, asgpaste-client history --use-indexdisplays it, and a search under it beside each match. Every argument naming an item is read as an index then, each ofmergeβs included, while text, names, search patterns, paths and history names keep their usual meaning. An index is an unsigned decimal number and nothing else: one with a sign or a space in front, or anything after its digits, is refused. π’-t,--timeout <seconds>β How long a password stays on the clipboard once it is the active item, foradd-passwordandmake-password. When it runs out, the next item that is not a password is selected, or the clipboard is emptied if the history holds none.0lets a password stay for as long as anything else would, and65535is as high as it goes. Without this option, a password already in the history keeps the timeout it carries and the countdown running for it, while one being created takes thepassword-timeoutsetting. β³-o,--onelineβ Display each item on one line, without new lines.-r,--rawβ Display the item raw (without index).-e,--reverseβ Display the items in reverse order.-z,--zeroβ Use NUL character instead of new lines between each item, or each historylist-historieslists, a historyβs name being free to hold a line break.-d,--decoration <string>β Add<string>to the beginning and the end of each itemmergejoins.-s,--separator <string>β Add<string>between each itemmergejoins.
xoxo, GPASTE-CLIENT(1) πβ¨ β from the General Commands Manual, and thereβs no separate source/version or date line on this page, so this is the whole sign-off, bestie π«Ά
π¦ where this page comes from
- arch rolling: gpaste 51.2-1 Β· BSD-2-Clause
- Copyright (c) 2010-2026, Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms