El comando Sed de Linux: Usos y Ejemplos
El comando SED es un poderoso comando de Linux que ayuda a realizar una tarea que puede tener múltiples propósitos, como lo es analizar y transformar texto. Hoy en día, SED se ejecuta en los principales sistemas operativos.
La sintaxis y una serie de características útiles de SED son tomadas prestadas principalmente del editor ed. El mecanismo en sí incluye flujos de entrada estándar, así como de archivos de texto. La sintaxis basada en script de SED puede parecer un poco difícil al principio. Sin embargo, muchas tareas complejas se pueden resolver con unas pocas líneas de comandos SED.
Tabla de Contenidos
Instalación de SED
En la distribución basada en Linux, SED viene instalado por defecto. Recuerda, antes de comenzar, debes acceder a tu VPS con SSH. Consulta nuestro tutorial PuTTY si tienes problemas con esto. El comando which se puede usar para verificar si el sistema tiene instalado SED o no. En el sistema GNU/Linux Debian se puede instalar el comando SED usando el administrador de paquetes apt de la siguiente manera:
[usuario]: ~$ sudo apt-get install sed
Para garantizar que el comando SED se ha instalado correctamente, puedes utilizar el siguiente comando:
[usuario]: ~$ sed --versión
El comando devolverá el siguiente resultado:
sed (GNU sed) 4.2. Copyright (C) 2012 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
Flujo de trabajo de SED
El flujo de trabajo básico de SED es Leer, Ejecutar y Mostrar, como vimos en la Figura 1.
El comando de lectura toma el valor de entrada y lo almacena en un búfer de patrón. La parte de ejecución ejecuta secuencialmente el comando en un archivo. Después de la ejecución, muestra la secuencia de salida. El buffer de patrón se libera a medida que el contenido se muestra en la interfaz. El proceso de comando de lectura, ejecución y visualización se repite hasta el final del archivo.
Ejemplos de uso de SED
En pocas palabras, SED lee un archivo y genera un texto como resultado. Para crear el archivo de texto, usa el editor vi.
[user]: ~$ vi text.txt
El comando para leer un archivo de texto es el siguiente:
[user]: ~$ sed ‘’ text.txt
El comando toma la entrada del archivo «text.txt«. Antes de cargar el archivo de entrada, debes escribir un argumento de línea de comando entre el par de comillas simples. Esto «le dice» a la línea de comando que ejecute SED.
SED lee el archivo de entrada «text.txt» y almacena los datos en un búfer de patrones. Después de eso, la operación se puede realizar.
Además, puedes escribir un argumento vacío para que no se realice ninguna operación. SED muestra los datos almacenados como salida estándar y vacía su búfer de patrones.
[user]: ~$ sed ‘’
El comando ‘’ de SED toma entradas del teclado. Se muestran en la primera y segunda línea. Muestra los datos almacenados en el búfer de patrones. Para cerrar la sesión SED, usa la entrada de teclado CTRL+D.
Comandos básicos de SED
Aprendamos los usos básicos del comando SED de Linux:
Comando eliminar
Para ejecutar el comando eliminar, usa d junto con un archivo entre comillas. El comando eliminará la primera línea en el archivo text.txt:
[user]: ~$ sed ‘1d’ text.txt
Comando de escritura
Para ejecutar el comando de escritura, escribe w, el número de línea y el archivo, entre comillas. El siguiente comando lee la segunda línea y la escribe en el archivo text2.txt:
[user]: ~$ sed '2~2 w text2.txt' text.txt [user]: ~$ cat text2.txt
Comando añadir
Usa la palabra clave y un número de línea entre comillas. Después de cerrar las comillas, proporciona la fuente adjunta. El siguiente comando muestra la segunda línea del archivo text.txt.
[user]: ~$ sed '2 a The Append example' text.txt[user]: ~$ cat text.txt
Comando de lectura
Usa r y escribe la ubicación del archivo entre comillas. El siguiente comando leerá la entrada de un archivo de texto y la agregará después de la tercera línea en el archivo text2.txt.
[user]: ~$ sed '3 r text.txt' text2.txt [user]: ~$ cat text2.txt
Conclusión
Con este tutorial, esperamos que hayas aprendido cómo instalar el comando SED y sus operaciones básicas . La herramienta SED le permite al usuario usar la línea de comando de múltiples maneras.
Ayuda a resolver problemas complejos de manera eficiente. No solo SED, GNU-Linux proporciona muchos beneficios útiles para realizar las tareas del día a día.
Aprende más sobre comandos Linux para leer archivos
¿Cómo leer el contenido de un archivo?
¿Cómo buscar dentro de un archivo de texto con el comando Grep?
¿Cómo leer el final de un archivo?
¿Cómo leer y mostrar un archivo con el comando Tee?