Ich habe meine Aliase in versucht setzen ~/.bash_profile
, ~/.bashrc
, /etc/profile
, und /etc/bashrc
.
Folgendes kann ich immer noch nicht ausführen:
alias zf2="php public/index.php"
und dann ausführen:
sudo zf2 orm:info
Das Problem scheint zu sein, dass ich mit visudo- keinen Alias als Befehl angeben kann, der einen Syntaxfehler verursacht.
Ich kann also nicht anrufen:
sudo zf2 orm:info
Ich konnte jedoch ein Skript unter / usr / share / scripts / zf2 erstellen, das Folgendes enthält:
#!/bin/bash
alias zf2="php public/index.php"
zf2 $1
und fügen Sie dieses Skript als Befehl in visudo hinzu. Wenn sich dieses Skript im PATH des Endbenutzers befindet, kann ich es ausführen
zf2 orm:info
Ich habe verschiedene Aliase zf2
, die ich dem Endbenutzer zur Verfügung stellen muss. Ich würde lieber einen Alias als eine Sammlung von Skripten pflegen.
sudo
selbst weiß nichts über Aliase.sudo
die Leitung übergeben wird, oder ob Sie die Aliase expandiert in der erhöhten Umgebung wollen. Pedanterie ist nicht nur ein Weg, um Augenrollen hervorzurufen. (Wow, aber der letzte Satz sieht überhaupt nicht koscher aus.)sudo -E
Antworten:
Ironischerweise besteht die Lösung darin,
sudo
von einem Alias anzurufen .Hinweis: Obwohl nicht empfohlen, können Sie den Alias benennen
sudo
:alias sudo="sudo "
quelle
alias sd="sudo "
vielleicht?alias sudo="sudo "
in der Endbenutzerumgebung hatte. Dies ist die Antwort