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 él de la manera habitual de Unix, y luego lo copia de nuevo.
Las opciones para open
: -W
espera a que TextEdit salga, por lo que sudo
sabe cuándo copiar el archivo de nuevo. -n
asegura que está esperando en una instancia separada de TextEdit, no en una que ya tienes abierta y que no quieres cerrar. También puede sustituir -t
en lugar de -e
si tiene un editor de texto favorito que no sea TextEdit.
Si ya tiene un 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 puede usar simplemente sudo -e <file>
directamente.