PROJET AUTOBLOG


Shaarli - Les discussions de Shaarli

Archivé

Site original : Shaarli - Les discussions de Shaarli du 23/07/2013

⇐ retour index

rcaloras/bash-preexec · GitHub

lundi 9 novembre 2015 à 02:55
GuiGui's Show - Liens
Ho, excellent, un équivalent du hook preexec de zsh pour bash qui permet donc de lancer une commande avant d'exécuter celle demandée par l'utilisateur. Évidemment, il s'agit d'un hack. :)

Un cas d'usage ? Avant l'exécution d'une commande ssh/scp/..., vérifier si l'agent ssh a encore la passphrase en mémoire, sinon la redemander ($1 contient l'intégralité de la commande saisie par l'utilisateur : pipes, redirection, enchaînement,...) :
preexec() {
       if [[ "$1" =~ ssh|scp|ssh-copy-id|sftp ]]; then
               ssh-add -L | grep -q "The agent has no identities." && echo "I'm SSH agent. Your passphrase, plz." && ssh-add -t 2h </chemin/vers/clé>
       fi
}
(Permalink)