GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie man `alias Sudo !!`?

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:

aufrufen
alias sbb='sudo "$BASH" -c "$(history -p !!)"'

Linux
  1. So installieren Sie Vagrant unter Linux

  2. So richten Sie vHosts in Apache ein

  3. So installieren Sie MongoDB unter Debian 11

  4. So installieren Sie Docker unter Ubuntu 22.04

  5. So installieren Sie MongoDB auf AlmaLinux 8

So aktualisieren Sie auf AlmaLinux 8.5

So installieren Sie Go unter Debian 11

So führen Sie einen Alias ​​mit Sudo in Linux aus

WIE INSTALLIERE ICH NEXTCLOUD AUF UBUNTU?

So installieren Sie Asterisk in Ubuntu 20.04

So installieren Sie Sendmail unter Ubuntu 22.04