Sto cercando di impostare un alias per sudo !!
in Bash. Ho provato alias sbb='sudo !!
', ma lo interpreta come un letterale !!
e stampe
sudo: !!: command not found
Se uso le virgolette doppie, sostituisce il double bang nella stringa stessa, quindi non funziona.
C'è un modo per farlo funzionare? O un alias alternativo?
`
Risposta accettata:
!!
viene espanso da bash quando lo digiti. Non viene ampliato dalla sostituzione dell'alias.
Puoi usare la history
integrato per eseguire l'espansione:
alias sbb='sudo $(history -p !!)'
Se il comando è più di un semplice comando (ad esempio contiene reindirizzamenti o pipe), devi invocare una shell sotto sudo:
alias sbb='sudo "$BASH" -c "$(history -p !!)"'