Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

253
Vistas
Script de Linux: sustitución de varias líneas con una sola línea de texto

¿Qué script de shell debo usar en Linux para reemplazar un grupo con n líneas de texto con una sola línea?

Tengo un archivo como:

 a b c * d e f * g h i *

y quiero obtener un archivo como:

 abc def ghi
over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

puede usar awk

 awk '{if ($0=="*"){print s;s=""}else{s=s$0}}' file

una manera bash de esto es

 while read x do [ "$x" == "*" ] && echo || echo -n $x done < file
over 4 years ago · Santiago Trujillo Denunciar

0

manera sed:

 sed ':a;N;$!ba;s/\n//g' < t | sed 's:*:\n:g'

t es el archivo que desea cambiar.

referencias: ¿Cómo puedo reemplazar una nueva línea (\ n) usando sed? ¿Por qué sed no reemplaza todas las ocurrencias?

El primer comando reemplaza \n con nada. el segundo reemplaza * con \n.

sed es una herramienta de edición de secuencias muy poderosa, por cierto, sabiendo que puede ayudarlo de más formas de las que puede imaginar.

over 4 years ago · Santiago Trujillo Denunciar

0

Aparte de la solución awk:

 tr '\n' ' ' < Input.txt |sed 's/ //g' | tr '*' '\n'
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda