Alla Awk-ohjelmalla toimiva QSO-datakonvertteri TR:n NRAU-lokiformaatista ehdotettuun Cabrillo-QSO-dataformaattiin. Toimii myös TR:llä lokattuihin Kalakukkoon ja Viitosten Syysotteluun.
Käyttö on muotoa:
awk -f nrau.awk mycall myprovince mylog mycall = kilpailussa käytetty kutsu myprovince = kilpailussa annettu maakuntalyhenne mylog = TR-lokin nimi
eli esimerkiksi:
awk -f nrau.awk oh6bg po log.dat Esimerkki (HUOM! Ohjelma käsittelee todellakin vain QSO-DATAN!) --------------------------------------------------------------- TR-LOKI 80CW 05-Jan-03 10:39 4 OH6QU 599 599 90 Po Po 2 80SSB 05-Jan-03 10:40 5 OH7C 59 59 100 Km Km 2 40SSB 05-Jan-03 10:40 6 OH7C 59 59 99 Km Km 2 40SSB 05-Jan-03 10:40 7 OH3O 59 59 999 Pm Pm 2 40CW 05-Jan-03 10:41 8 OH3Y 599 599 0 Rk Rk 2 40CW 05-Jan-03 10:41 9 OH6GDX 599 599 111 Po Po 2 40CW 05-Jan-03 10:41 10 OH6QU 599 599 888 Po 2 MUUNNOKSEN JÄLKEEN QSO: 3500 CW 2003-01-05 1039 OH6BG 599 004 PO OH6QU 599 090 PO QSO: 3500 PH 2003-01-05 1040 OH6BG 59 005 PO OH7C 59 100 KM QSO: 7000 PH 2003-01-05 1040 OH6BG 59 006 PO OH7C 59 099 KM QSO: 7000 PH 2003-01-05 1040 OH6BG 59 007 PO OH3O 59 999 PM QSO: 7000 CW 2003-01-05 1041 OH6BG 599 008 PO OH3Y 599 000 RK QSO: 7000 CW 2003-01-05 1041 OH6BG 599 009 PO OH6GDX 599 111 PO QSO: 7000 CW 2003-01-05 1041 OH6BG 599 010 PO OH6QU 599 888 PO
Alla muunnoskripti. Kuten kaikki nykypäivän ohjelmat, tämä ohjelma ei varmasti ole virheetön (tämä ei ole myöskään kovin esteettinen :)). Käyttö on käyttäjän vastuulla. Mikäli löydätte isomman tai pienemmän virheen ohjelmasta, ottanette yhteyttä.
# nrau.awk # # Quick-n-dirty TR to NRAU Cabrillo QSO data converter # Suitable also for Kalakukko and Viitosten Syysottelu # # NOTE! At the moment, NRAU does not accept Cabrillo! See their rules. # # by Jari Perkiömäki OH6BG, 5 January 2003 # # Usage: gawk -f nrau.awk mycall myprovince mylog # e.g. gawk -f nrau.awk oh6bg po log.dat # BEGIN { # checking command line if (ARGC > 3) { CALL = ARGV[1] P = ARGV[2] FILE = ARGV[3] delete ARGV[1] delete ARGV[2] } else { print "Usage: gawk -f nrau.awk mycall myprovince mylog" exit 1 } } { # processing time from XX:YY to XXYY gsub(/:/,"") $3 = " " $3 # processing date: reorganising d = substr($2,1,2) m = substr($2,4,3) y = substr($2,8) if (m == "Jan") m = "01" if (m == "Feb") m = "02" if (m == "Mar") m = "03" if (m == "Apr") m = "04" if (m == "May") m = "05" if (m == "Jun") m = "06" if (m == "Jul") m = "07" if (m == "Aug") m = "08" if (m == "Sep") m = "09" if (m == "Oct") m = "10" if (m == "Nov") m = "11" if (m == "Dec") m = "12" $2 = " " "20" y "-" m "-" d # processing right lengths for the callsigns u = substr(" ",length($5)) m = substr(" ",length(CALL)) ucall = " " toupper($5) u " " mycall = " " toupper(CALL) m " " # translating bands to frequencies band = substr($1,1,2) mode = substr($1,3) if (band == 80) { band = 3500 } if (band == 40) { band = 7000 } if (mode == "SSB") { mode = "PH"} band = " " band mode = " " mode # processing RST if (length($6) == 2) { $6 = $6 " " } if (length($7) == 2) { $7 = $7 " " } # processing sent and received serial numbers with preceding zeros if (length($4) == 1) { $4 = "00" $4 } if (length($4) == 2) { $4 = "0" $4 } if (length($8) == 1) { $8 = "00" $8 } if (length($8) == 2) { $8 = "0" $8 } $4 = " " $4 $8 = " " $8 # province sent and received p = " " toupper(P) $9 = " " toupper($9) # print QSO lines print "QSO:" band mode $2 $3 mycall $6 $4 p ucall $7 $8 $9 }