On 2020-07-01 16:46, Ulises Gonzalez Horta wrote:
> On 2020-07-01 11:07, Tec. Comunicaciones Transgaviota Centro wrote:
>
>> Tengo un fichero de texto que tiene xyz módulos como este que pego a
>> continuación
>>
>> Todos los módulos tienen en común que empiezan con APP_LoTW_OWNCALL y
>> terminan con <eor>
>>
>> Pero se necesita que esos modulos sean exportados a otro fichero de texto en
>> una sola línea los siguientes datos
>>
>> SM7IUN 30M 10.13833 FT8 20200628
>> 040615
>>
>> Que son los valores de algunas de las filas, pues esos datos se necesitan
>> luego para pegarlos en un Excel.
>>
>> Cualquier ayuda desde ya se agradece.
>>
>> <APP_LoTW_OWNCALL:4>T46W
>>
>> <STATION_CALLSIGN:4>T46W
>>
>> <CALL:6>SM7IUN
>>
>> <BAND:3>30M
>>
>> <FREQ:8>10.13833
>>
>> <MODE:3>FT8
>>
>> <APP_LoTW_MODEGROUP:4>DATA
>>
>> <QSO_DATE:8>20200628
>>
>> <APP_LoTW_RXQSO:19>2020-06-30 12:42:29 // QSO record inserted/modified at
>> LoTW
>>
>> <TIME_ON:6>040615
>>
>> <APP_LoTW_QSO_TIMESTAMP:20>2020-06-28T04:06:15Z // QSO Date & Time; ISO-8601
>>
>> <QSL_RCVD:1>Y
>>
>> <QSLRDATE:8>20200630
>>
>> <APP_LoTW_RXQSL:19>2020-06-30 12:42:29 // QSL record matched/modified at
>> LoTW
>>
>> <eor>
>>
>> <APP_LoTW_OWNCALL:4>T46W
>>
>> <STATION_CALLSIGN:4>T46W
>>
>> <CALL:6>KC9GHA
>>
>> <BAND:3>30M
>>
>> <FREQ:8>10.13833
>>
>> <MODE:3>FT8
>>
>> <APP_LoTW_MODEGROUP:4>DATA
>>
>> <QSO_DATE:8>20200628
>>
>> <APP_LoTW_RXQSO:19>2020-06-30 12:42:29 // QSO record inserted/modified at
>> LoTW
>>
>> <TIME_ON:6>040345
>>
>> <APP_LoTW_QSO_TIMESTAMP:20>2020-06-28T04:03:45Z // QSO Date & Time; ISO-8601
>>
>> <QSL_RCVD:1>Y
>>
>> <QSLRDATE:8>20200630
>>
>> <APP_LoTW_RXQSL:19>2020-06-30 12:42:29 // QSL record matched/modified at
>> LoTW
>>
>> <eor>
>>
>> Saludos Cordiales,
>>
>> M.Sc. Wilfredo Martínez Consuegra
>>
>> Técnico en Comunicaciones
>>
>> Transgaviota CENTRO
>>
>> Cayo Las Brujas, Villa Clara.
>>
>> Teléfono Trabajo: +53 42 350080 ext 116
>>
>> Teléfono Celular: +53 53 664 665
>>
>> www.gaviota-grupo.com [1]
>>
>> [2] [3]
>>
>> _______________________________________________
>> Gutl-l mailing list -- gutl-l@listas.jovenclub.cu
>> To unsubscribe send an email to gutl-l-le...@listas.jovenclub.cu
>
> Supon que pones todo eso en un archivo llamado sample, entoces puedes correr
> algo como
>
> ulises@ulises-kub:/tmp$ paste -s sample | sed -r 's/<eor>/\r\n/' | awk '{
> print $3" "$4" "$5" "$6" "$8" "$17 }' | sed
> 's/<CALL:6>//;s/<BAND:3>//;s/<FREQ:8>//;s/<MODE:3>//;s/<QSO_DATE:8>//;s/<TIME_ON:6>//'
>
>
> Para obtener el resultado....
>
> SM7IUN 30M 10.13833 FT8 20200628 040615
> KC9GHA 30M 10.13833 FT8 20200628 040345
>
> Se que el ultimo sed es una puercada, se que hay una forma de decirle a sed
> que en lugar de abarcar lo mas que pueda con una regex solo abarque lo menos
> posible, pero ahora luego de buscar un poco no he encontrado la opcion, pero
> yo se que existe pues la use anhos atras, si la encuentras toda esa linea se
> puede simplificar a algo como
>
> paste -s sample | sed -r 's/<eor>/\r\n/' | awk '{ print $3" "$4" "$5" "$6"
> "$8" "$17 }' | sed -r 's/<.*>//N'
>
> Donde solo cambiarias la "N" final por la letra que toca, pues creo que era
> algo que se ponia al final, pero no estoy seguro, de momento puedes usar el
> seboruco ese para hacer el trabajo sucio de una forma un poco sucia
>
> Como ya te dije el archivo sample tiene los datos que diste
>
> ulises@ulises-kub:/tmp$ cat sample
> <APP_LoTW_OWNCALL:4>T46W
>
> <STATION_CALLSIGN:4>T46W
>
> <CALL:6>SM7IUN
>
> <BAND:3>30M
>
> <FREQ:8>10.13833
>
> <MODE:3>FT8
>
> <APP_LoTW_MODEGROUP:4>DATA
>
> <QSO_DATE:8>20200628
>
> <APP_LoTW_RXQSO:19>2020-06-30 12:42:29 // QSO record inserted/modified at LoTW
>
> <TIME_ON:6>040615
>
> (...)
>
> Suerte
>
> --
> Salu2, Ulinx
> "En un problema con n ecuaciones
> siempre habrá al menos n+1 incógnitas"
> Linux user 366775
> Quieres saber de Cuba o visitar Cuba, revisa mi canal Youtube (en español)
> http://bit.ly/Alocubano
> _______________________________________________
> Gutl-l mailing list -- gutl-l@listas.jovenclub.cu
> To unsubscribe send an email to gutl-l-le...@listas.jovenclub.cu
La misma pero mas bonita
paste -s sample | sed -r 's/<eor>/\r\n/' | awk '{ print $3" "$4" "$5"
"$6" "$8" "$17 }' | sed -r 's/<.{4,8}:[0-9]>//g'
--
Salu2, Ulinx
"En un problema con n ecuaciones
siempre habrá al menos n+1 incógnitas"
Linux user 366775
Quieres saber de Cuba o visitar Cuba, revisa mi canal Youtube (en
español) http://bit.ly/Alocubano
Links:
------
[1] http://webmail.ulinxonline.net/./#NOP
[2] https://www.facebook.com/TransGaviotaCuba/?ref=ts&fref=ts
[3] https://twitter.com/transgaviota
_______________________________________________
Gutl-l mailing list -- gutl-l@listas.jovenclub.cu
To unsubscribe send an email to gutl-l-le...@listas.jovenclub.cu