2012-04-17 11 views
12

siempre corro emacs como demonio, pero cuando quiero hacer algo por el¿Hay alguna forma de abrir el archivo con emacsclient (usuario) pero con permiso de root?

sudo emacsclient /etc/make.conf 

no puedo hacerlo porque la raíz está utilizando otro emacs y yo realmente no quiero correr 2 demonios o esperar emacs habituales cargar para archivo simple.

Necesito alguna solución por igual emacsclientsudo /etc/make.conf :) para editar los archivos del sistema con el usuario emacs cliente.

Respuesta

18

añadir a su ~/.profile:

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

continuación

E /etc/hosts 

usted debería ser capaz de utilizar sudoedit en lugar de sudo -e, pero no pude encontrar la antigua en mi Mac.

+2

aseado. Creo que puedes simplemente establecer SUDO_EDITOR en tus scripts de inicio y directamente llamar a 'sudo -e' o' sudoedit' en cualquier archivo que desees. –

4

no estoy seguro de ello directamente, pero aquí es un truco

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

Usos vagabundo y el método sudo para abrir /etc/passwd como root.

Puede alias esto y usarlo directamente desde su shell.

+0

La pregunta no está clara, si el servidor Emacs se ejecuta como root o no. La otra respuesta supone que el servidor se ejecuta como root. Su respuesta asume que el servidor se ejecuta sin privilegios. – ceving

+0

Mi respuesta funciona de cualquier manera. –

Cuestiones relacionadas