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

305
Vistas
¿Cómo reemplazar Pipe con una nueva línea en Linux?

Por favor, acepte mis disculpas, si esta pregunta fue hecha antes. Soy nuevo y no se como hacerlo. Tengo un archivo que contiene los datos como este:

 name=1|surname=2|phone=3|email=4 phone=5|surname=6|name=7|email=8 surname=9|phone=10|email=11|name=12 phone=13|email=14|name=15|surname=6

Me gustaría tener un archivo como este:

 name=1 name=7 name=12 name=15

¡Gracias por adelantado!

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Di que names.txt es tu archivo, luego usa algo como:

 cat names.txt | tr "|" "\n" | grep "^name="
  • tr transforma | a nuevas líneas
  • filtros grep para las lineas con nombre

Y aquí hay una solución de un solo comando con GNU awk:

 awk -v RS="[|\n]" '/^name=/' names.txt
  • el -v RS="[|\n]' set the record separatro to |` o nueva línea
  • los filtros /^name=/ para registros que comienzan con name= (y los imprime implícitamente)
over 4 years ago · Santiago Trujillo Denunciar

0

Iría por la solución de @Lars, pero quería probar esto con "lookbehind". Con grep puede obtener las coincidencias solo con grep -o , pero la siguiente línea también encontrará el apellido:

 grep -o "name=[0-9]*" names.txt

Puede arreglar esto un poco buscando el carácter antes del nombre (comienzo de línea con ^ o | ).

 grep -o "(^|\|)name=[0-9]*" names.txt

¡Qué arreglo! Ahora obtienes los nombres correctos, pero a veces con un extra | .
Con \K (y la opción grep -P) puede decirle a grep que use algo para la coincidencia pero omitirlo durante la salida.

 grep -oP "(^|\|)\Kname=[0-9]*" names.txt
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