Soy nuevo en Linux. Necesito editar un .confarchivo solo desde el terminal abierto y no usar ningún editor de texto. Es decir, ¿puedo agregar palabras y oraciones a un archivo de configuración desde un terminal abierto?
Ejemplo: command /home/.../file.conf -add 'abcd'hasta la línea 23 y así sucesivamente. Y finalmente, guárdalo.
¿Es posible buscar una palabra específica en ese archivo de configuración y agregar texto nuevo a la siguiente línea de ese archivo de configuración usando solo el comando?
command-line
text
editing
usuario259060
fuente
fuente

sedpuede venir a ayudar.Respuestas:
Usualmente hago esto cuando estoy programando mi script para que haga lo mismo que me pides pero programáticamente.
Voila! Lo tienes. Es importante tener en cuenta que
>>significa agregar una nueva línea al archivo existente, mientras que>simplemente sobrescribe todo.fuente
Agregar palabras y oraciones a un archivo de configuración desde un terminal abierto se puede lograr fácilmente con sed.
inserta en la línea 23 el texto
abcden el archivofile.conf-irealiza la modificación directamente al archivofile.conf.Si quieres usar
awkentonces:Lo siguiente agrega una línea después de SearchPattern.
Inserta texto nuevo una línea debajo de cada línea que contiene SearchPattern.
Para agregar dos líneas, puede usar
\ay ingresar una nueva línea mientras escribe Nuevo texto.fuente
También puedes usar el
printfcomando.Para agregar líneas a su archivo
Para sobrescribir el archivo
fuente
Notas:
Cómo funciona:
inputfilepara leer las líneas de entrada, límpielooutputfiley ábralo para escribir las líneas de salidafuente
Encontré una solución a mi propia pregunta usando el
edcomandoEl texto puede contener 27 líneas. Puede copiar 27 líneas de un archivo de texto y pegar 27 líneas en su archivo de configuración. Pero necesito ejecutar el
edcomando simultáneamente para agregar más texto al mismo archivo de configuración.fuente