Skip to content

Instantly share code, notes, and snippets.

@justinline
Last active December 13, 2023 10:34
Show Gist options
  • Star 4 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save justinline/e11ac0f08f267502b9e96362457d03c6 to your computer and use it in GitHub Desktop.
Save justinline/e11ac0f08f267502b9e96362457d03c6 to your computer and use it in GitHub Desktop.
1password command line clipboard copying
# Short alias to allow automated copying of the 1password cli tool command 'op get somewebsite | jq ...' and then a timed clear on the gnome clipboard
# TODO: specify designation as an argument and maybe a command to open the website in chrome
pass=$(op get item $1 | jq -r '.details.fields[] | select(.designation=="password").value')
if [ -n "$pass" ]
then
echo $pass | xclip -selection clipboard
echo "Password was copied - clipboard will be wiped in 15 seconds"
sleep 15
echo "" | xclip -selection clipboard
echo "Clipboard reset."
fi
@kercdbh
Copy link

kercdbh commented Jul 28, 2023

Tested on a MacBook Pro M1 Ventura 13.5, this works:

pass=$(op item get $1 --format json | jq -r '.fields[] | select(.id=="password").value')

if [ -n "$pass" ]
    then 
         echo $pass | pbcopy
         echo "Password was copied - clipboard will be wiped in 15 seconds"
         sleep 15
         echo "" | pbcopy
         echo "Clipboard reset."
fi

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment