#!/usr/bin/env bash ## Run the `show` subcommand of the password manager `pass`, but instead of ## entering the password name as usual, select the password file using fzf. ## ## Usage: pass-show [...] ## ## Dependencies: fzf, GNU sed, pass set -euo pipefail shopt -s inherit_errexit [[ " $* " =~ ' --help ' ]] && sed -n 's/^## \?//p' "$0" && exit cd "${PASSWORD_STORE_DIR:-~/.password-store}" password_name=$(fzf | sed 's/\.gpg$//') # Don't run `pass show` in a pipeline (using xargs) because doing so will result # in a GnuPG error if the private key hasn't already been decrypted. pass show "$password_name" "$@"