Mantente al día sobre las novedades de tu asunto favorito

Aprende a crear sitios web increíbles con facilidad

Usa el poder de Internet para promocionar tu negocio

Inspírate con las estrategias de grandes empresas

Contenido variado para potenciar los resultados de tu proyecto

La confirmación de tu inscripción ha sido enviada a tu correo electrónico

¡Gracias por suscribirte, esperamos que disfrutes nuestros contenidos!

Destacado en la categoría:

comando sed de linux

Compartir:

sed es uno de los comandos más utilizados en Linux, su versatilidad y aplicaciones son constantes para diversas situaciones. En este artículo aprenderás un poco más sobre sed y sus principales usos. ¿Vamos? ¿Qué es sed? sed o Stream Editor es un editor de flujos y filtros, una potente herramienta para automatizar funciones y manipular […]

sed es uno de los comandos más utilizados en Linux, su versatilidad y aplicaciones son constantes para diversas situaciones. En este artículo aprenderás un poco más sobre sed y sus principales usos. ¿Vamos?

¿Qué es sed?

sed o Stream Editor es un editor de flujos y filtros, una potente herramienta para automatizar funciones y manipular texto.

Con sed puedes editar cada línea de un archivo y ver la salida estándar en el terminal, sed también tiene opciones de redireccionamiento que te permiten guardar las ediciones y muchas otras opciones.

Aunque complejo al principio, dominar esta herramienta es un paso muy importante para aquellos que quieran convertirse en administradores Linux, así que echa un vistazo a las siguientes aplicaciones de sed.

Cómo usar sed

Existen varias parametrizaciones y reglas para utilizar sed y porque es un comando complejo. Al principio su sintaxis utiliza el siguiente formato:

sed [OPCIONES]... [ARCHIVO]...

Para aclarar mejor las funciones de sed, hablaremos de sus principales características en la práctica. Echa un vistazo a las principales formas de utilizar este comando:

Sustituir el contenido de un texto

Con sed es posible realizar sustituciones de determinado texto, mira el siguiente ejemplo:

sed

En el ejemplo anterior, el archivo ejemplo.txt tiene como contenido el texto “adoro Snappy de HostGator”. Al ejecutar el comando cat en este archivo, el contenido aparece en la pantalla del terminal normalmente y sed permite editar esta salida de texto utilizando la redirección pipe ( | ). Se utilizó la siguiente expresión:

sed 's/adoro/amo/'

Hay varios conceptos detrás de este filtro sed, veámoslos más de cerca:

  • = el uso de comillas simples en este caso, surge para que sed interprete el filtro como literal, sin sustituir ni un solo término por una variable. Si fuera necesario que interpretara variables, en este caso sería correcto utilizar comillas dobles.
  • s = la subflag s, indica a sed que el siguiente comando es un a sustitución, es decir, va a sustituir un determinado patrón de texto por otro.
  • /{término}/{término}/ = sed utiliza / como separador de los contenidos a filtrar, y también se pueden utilizar otros caracteres, como pipe (|{término}|{término}|) o punto (.{término}.{término}.). Estos caracteres tienen la función de delimitar a sed e identificar los términos a sustituir. En el ejemplo utilizado, la sustitución en el texto fue la palabra adoro por amo.

Además de esto, sed también entiende expresiones regulares, lo que le permite crear un filtro aún más complejo para las sustituciones:

Ahora en el archivo ejemplo.txt, tiene una coma al final del fichero que puede ser no deseada, con sed se puede quitar usando una expresión regular:

sed 's/,$//'

  • /,$//= en este caso, el término ,$ representa cualquier coma en el texto que se encuentre al final de la línea, función que realiza la expresión regular dólar y la sustitución es por nada, por lo que se entiende que sólo elimina ese primer término.

Tenga en cuenta que, si no se utilizara la expresión regular, sólo se eliminaría la coma en medio del texto:

sed aplica el filtro configurado sólo en el primer término de cada línea. Si hubiera más casos en la misma línea que sustituir, sería necesario utilizar el subflag g (global) justo antes de cerrar las comillas simples:

Sustituir el contenido de un fichero por la salida sed

sed no sólo se puede utilizar con pipe, sino que también se puede utilizar directamente con un archivo, pero cuando se aplica el comando sed al archivo, éste no llega a editarse:

En este caso, el archivo ejemplo.txt tenía el término Linux sustituido por Ubuntu, pero al hacer el cat en el archivo, la estructura sigue siendo la misma.

Para que sed sustituya el contenido del archivo, es necesario utilizar flag -i:

Conclusiones Finales

En este artículo has aprendido sobre el comando sed de Linux y sus principales aplicaciones.

También recomiendo estos otros materiales relacionados con este tema:

¡Hasta la próxima! :^)

Navega por asuntos

  • ¿Qué es sed?

  • Cómo usar sed

    • Sustituir el contenido de un texto

    • Sustituir el contenido de un fichero por la salida sed

  • Conclusiones Finales

Tags:

    Julio Pires

    Analista de Contenido Técnico en la empresa HostGator y estudiante de Física en la UFSC. Le gusta ver series, jugar juegos clásicos, nunca rechaza una partida de ajedrez y busca estar siempre actualizado en el mundo de la tecnología.

    Más artículos del autor

    Crea tu presencia en línea

    Encuentra el nombre perfecto para tu web:

    www.