Soyfinalmenteaprendiendo a usar sed
para editar configuraciones mientras instala Ubuntu (Servidor/Escritorio). Después de mucho crujir de dientes y buscar la sintaxis adecuada paranoelimine el "
(comentario entre comillas dobles con exactamenteunoespacio en blanco después (comentarios reales)), a diferencia de las líneas que tienen código potencial para alternar (ceroespacios en blanco odosespacios en blanco para líneas de código sangradas) en el archivo /etc/vim/vimrc, descubrí cómo hacer que todo funcione con el siguiente comando:
$ sudo sed -i.orig '/^\" [a-zA-Z]\|^"set compatible\|^\" let g:skip_defaults_vim = 1b/! s/^\"//' /etc/vim/vimrc
¿Podrían los gurús o los aprendices, por favor, decirme si podría haber hecho esto mejor (más estricto/más limpio/etc.)?
¿Ejemplo de uso awk
para el mismo resultado?
Gracias.
Respuesta1
Utilice las \1
variables de captura numeradas en el destino del cambio asís/^([[:space:]]*)"[[:space:]]*(let .*)/\1\2/
También usosed 'your change;another change' file > file.tmp$$ && mv file.tmp$$ file
Es la forma "más segura" y portátil de cambiar archivos en el lugar quesed -i ...
Para archivos dot como ~/.vimrc
en ~ y archivos conf en /etc, use git para guardarlos localmente. etckeeper es excelente para la gestión de /etc con git.
Algunas personas utilizan augeas
para editar archivos conf, o incluso chef/puppet para administrarlos automáticamente.