Criando um alias contendo expansão do histórico do bash

Criando um alias contendo expansão do histórico do bash

Muitas vezes me esqueço de executar um comando com sudo, então muitas vezes me pego digitando sudo !!imediatamente depois.

Eu tentei alias isso, mas o bash engasga por !!parte. Existe alguma maneira de representar esse atalho dentro de um alias?

Responder1

AIUI, o problema é que as substituições de histórico ( !!) são feitas antes da substituição do alias. Não testei isso completamente, mas parece que fcpode ser usado para conseguir o que deseja:

alias sudothat='eval "sudo $(fc -ln -1)"'

Responder2

De um colega de trabalho:

alias sa='sudo `history -p \!\!`'

parece fazer o truque

informação relacionada