2012-04-17 2 views
12

Ich laufe immer Emacs als Dämon, aber wenn ich etwas gleichGibt es eine Möglichkeit, Datei mit Emacsclient (Benutzer) zu öffnen, aber mit Root-Berechtigung?

sudo emacsclient /etc/make.conf 

machen will, kann ich es nicht tun, weil root weiteren Emacs und ich will nicht wirklich 2-Dämonen laufen oder übliche Emacs warten Lade für einfache Datei.

Ich brauche eine Lösung wie emacsclientsudo /etc/make.conf :) um Systemdateien mit dem Benutzer Emacs Client zu bearbeiten.

Antwort

18

legen zum ~/.profile:

alias E="SUDO_EDITOR=\"emacsclient\" sudo -e" 

dann

E /etc/hosts 

sollten Sie in der Lage sein sudoedit zu verwenden, anstatt sudo -e, aber ich konnte nicht die ehemaligen auf meinem Mac finden.

+2

Ordentlich. Ich denke, du kannst SUDO_EDITOR einfach in deinen Init-Skripten setzen und 'sudo -e' oder' sudoedit' direkt auf der gewünschten Datei aufrufen. –

4

Ich bin nicht sicher, es direkt, aber hier ist ein Trick

emacsclient -e '(find-file "/sudo::/etc/passwd")' 

tramp Verwendet und die sudo Methode /etc/passwd als root zu öffnen.

Sie können dies als Alias ​​verwenden und direkt in Ihrer Shell verwenden.

+0

Die Frage ist nicht klar, ob Emacs Server als root ausgeführt wird oder nicht. Die andere Antwort geht davon aus, dass der Server als root ausgeführt wird. Ihre Antwort geht davon aus, dass der Server nicht privilegiert ausgeführt wird. – ceving

+0

Meine Antwort funktioniert so oder so. –

Verwandte Themen