Soy nuevo en Linux. Necesito editar un .conf
archivo 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
sed
puede 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
abcd
en el archivofile.conf
-i
realiza la modificación directamente al archivofile.conf
.Si quieres usar
awk
entonces: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
printf
comando.Para agregar líneas a su archivo
Para sobrescribir el archivo
fuente
Notas:
Cómo funciona:
inputfile
para leer las líneas de entrada, límpielooutputfile
y ábralo para escribir las líneas de salidafuente
Encontré una solución a mi propia pregunta usando el
ed
comandoEl 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
ed
comando simultáneamente para agregar más texto al mismo archivo de configuración.fuente