La forma completa del comando "sed" es un editor de transmisión. Este comando es un comando muy potente del sistema operativo Linux y se utiliza para varios fines. Uno de los usos comunes de este comando es encontrar y reemplazar uno o más valores de cadena de un archivo. El contenido particular de un archivo puede ser reemplazado por este comando sin abrir el archivo. El comando "sed" admite la expresión regular. El valor de cadena específico se puede buscar dentro de un archivo basado en la expresión regular que se define con este comando. Las diferentes formas de buscar y reemplazar la cadena particular en un archivo utilizando el comando "SED" se muestran en este tutorial.
Sintaxis:
La sintaxis del comando "SED" para buscar y reemplazar la cadena desde un archivo se da de la siguiente manera:
Sed -i "S/buscar/reemplazar" nombre de archivo
Aquí, la opción "I" se usa para reemplazar el contenido del archivo original si se encuentra la palabra de búsqueda. El "sEl comando "indica el sustituto que busca la cadena particular y reemplaza la cadena con otra cadena si la palabra de búsqueda existe en el archivo. El nombre de archivo contiene el nombre de cualquier nombre de archivo existente donde se realicen la búsqueda y el reemplazo.
Diferentes ejemplos de comandos "sed"
Las diferentes formas de buscar y reemplazar las cadenas en un archivo se muestran en esta parte del tutorial. Crear un archivo de texto llamado estudiantes.TXT por el siguiente contenido donde se realiza la tarea de búsqueda y reemplazo utilizando el comando "SED":
estudiantes.TXT
Maryland. Hossain: CSE: Lote-50: Semestre-10
Nibir Rahman: CSE: Batch-51: Semestre-9
Mehnaz Kazi: CSE: Batch-52: Semestre-8
Ejemplo 1: Reemplace todas las ocurrencias de la cadena sin cambiar el archivo
El método para reemplazar una cadena particular en un archivo basado en la coincidencia exacta de la cadena de búsqueda se muestra en este ejemplo.
Ejecute el siguiente comando para verificar el contenido de los estudiantes.archivo txt:
Estudiantes de $ Cat.TXT
Ejecute el siguiente comando para buscar la palabra "CSE" en los estudiantes.Archivo TXT y reemplazar todas las ocurrencias de esta cadena usando "BBA":
Estudiantes de $ Sed 'S/CSE/BBA/'.TXT
Producción:
La siguiente salida aparece después de ejecutar los comandos anteriores:
Ejemplo 2: Reemplace permanentemente todas las ocurrencias de la cadena en el archivo
El método para reemplazar permanentemente una cadena particular en un archivo basado en la cadena de búsqueda se muestra en este ejemplo.
Ejecute el siguiente comando para verificar el contenido de los estudiantes.archivo txt:
Estudiantes de $ Cat.TXT
Ejecute el siguiente comando para buscar la palabra "lote" en los estudiantes.TXT File y reemplazar todas las ocurrencias de esta cadena en el archivo permanentemente utilizando "Batch":
Estudiantes de $ Sed -i 'S/Batch/Batch/I'.TXT
Ejecute el siguiente comando para verificar el contenido actualizado de los estudiantes.archivo txt:
Estudiantes de $ Cat.TXT
Producción:
La siguiente salida aparece después de ejecutar los comandos anteriores:
Ejemplo 3: Reemplace la ocurrencia particular de la cadena en el archivo
El método para reemplazar una cadena particular de una ocurrencia particular en un archivo basado en la coincidencia exacta de la cadena de búsqueda se muestra en este ejemplo:
Ejecute el siguiente comando para verificar el contenido de los estudiantes.archivo txt:
Estudiantes de $ Cat.TXT
Ejecute el siguiente comando para buscar la palabra "0" en los estudiantes.TXT File y reemplace todas las ocurrencias de esta cadena en el archivo usando "1":
Estudiantes de $ sed 's/0/1/'.TXT
Ejecute el siguiente comando para buscar la palabra "0" en los estudiantes.archivo txt y reemplace la segunda aparición de esta cadena en el archivo usando "1":
Estudiantes de $ sed 's/0/1/2'.TXT
Producción:
La siguiente salida aparece después de ejecutar los comandos anteriores:
Ejemplo 4: imprima las líneas reemplazadas del archivo dos veces
El método para reemplazar una cadena particular en un archivo basado en la coincidencia exacta de la cadena de búsqueda e imprimir cada línea reemplazada dos veces se muestra en este ejemplo.
Ejecute el siguiente comando para verificar el contenido de los estudiantes.archivo txt:
Estudiantes de $ Cat.TXT
Ejecute el siguiente comando para buscar la palabra "lote" en los estudiantes.TXT File y reemplace todas las ocurrencias de esta cadena en el archivo usando "Batch" e imprima las líneas reemplazadas dos veces:
Estudiantes de $ Sed 'S/Batch/Batch/P'.TXT
Producción:
La siguiente salida aparece después de ejecutar los comandos anteriores:
Ejemplo 5: Reemplace la cadena de la línea particular del archivo
El método para reemplazar una cadena particular de una línea particular en un archivo basado en la cadena de búsqueda se muestra en este ejemplo.
Ejecute el siguiente comando para verificar el contenido de los estudiantes.archivo txt:
Estudiantes de $ Cat.TXT
Ejecute el siguiente comando para buscar la palabra "lote" en los estudiantes.archivo txt y reemplace la ocurrencia de esta cadena en la segunda línea del archivo usando "lote":
$ sed '2 s/lote/lote/i' Estudiantes.TXT
Producción:
La siguiente salida aparece después de ejecutar los comandos anteriores:
Ejemplo 6: Reemplace la cadena de la gama particular de líneas del archivo
El método para reemplazar una cadena particular en el rango particular de líneas de un archivo basado en la cadena de búsqueda se muestra en este ejemplo.
Ejecute el siguiente comando para verificar el contenido de los estudiantes.archivo txt:
Estudiantes de $ Cat.TXT
Ejecute el siguiente comando para buscar la palabra "lote" en los estudiantes.Archivo txt y reemplace la ocurrencia de esta cadena de la primera a la segunda línea del archivo usando "lote":
Estudiantes de $ sed '1,2 s/lotes/lotes/'.TXT
Producción:
La siguiente salida aparece después de ejecutar los comandos anteriores:
Conclusión
El comando "SED" es un comando muy útil de Linux para hacer la tarea de búsqueda y reemplazar. Facilita la tarea de reemplazar el contenido de un archivo utilizando diferentes patrones de búsqueda. Los usos del comando "SED" para reemplazar el contenido de un archivo basado en la coincidencia exacta, el número de ocurrencias de búsqueda o el número de la línea se muestran aquí con múltiples ejemplos. Esperamos que los usuarios de Linux puedan usar el comando "SED" para reemplazar el contenido del archivo después de leer este tutorial correctamente.