Aquí hay una manera de evitar ejecutar TextEdit como root:
EDITOR='open -Wne' sudo -e /etc/apache2/httpd.conf
Deberá salir de la copia de TextEdit después de editar el archivo.
sudo -e
, a veces conocido como sudoedit
pero no en OS X, hace una copia temporal del archivo con permiso de escritura para el usuario actual, invoca un editor en el modo habitual de Unix y luego lo copia de nuevo .
Las opciones para open
: -W
esperan a que se cierre TextEdit, por lo que sudo
sabe cuándo volver a copiar el archivo. -n
asegura que está esperando en una instancia separada de TextEdit, no una que ya tenga abierta y que tal vez no quiera abandonar. También puedes sustituir -t
en lugar de -e
si tienes un editor de texto favorito que no sea TextEdit.
Si ya tiene un conjunto de variables EDITOR
para usar un editor gráfico con su propia herramienta de línea de comandos con capacidad de espera (como TextMate o BBEdit), entonces no necesita ninguno de estos trucos y solo puede usar sudo -e <file>
directamente.