Ich versuche, einen Alias für sudo !!
festzulegen in Basch. Ich habe alias sbb='sudo !!
versucht ‘, aber es interpretiert das als wörtlichen !!
und druckt
sudo: !!: command not found
Wenn ich doppelte Anführungszeichen verwende, wird der doppelte Knall in der Zeichenfolge selbst ersetzt, sodass das nicht funktioniert.
Gibt es eine Möglichkeit, dies zum Laufen zu bringen? Oder einen alternativen Alias?
`
Akzeptierte Antwort:
!!
wird durch bash erweitert, wenn Sie es eingeben. Es wird nicht durch Alias-Ersetzung erweitert.
Sie können den history
verwenden eingebaut, um die Erweiterung durchzuführen:
alias sbb='sudo $(history -p !!)'
Wenn der Befehl mehr als ein einfacher Befehl ist (z. B. Umleitungen oder Pipes enthält), müssen Sie eine Shell unter sudo:
aufrufenalias sbb='sudo "$BASH" -c "$(history -p !!)"'