[linux] awk helemaal gek geworden?
hans paijmans
j.j.paijmans op gmail.com
Di Jan 5 15:39:03 CET 2016
Ik dacht dat ik na dertig jaar alle rare streken van awk wel had gezien.
Niet dus.
Het volgende scriptje leest van een usb port, bewerkt de regels en
schrijft ze weer weg.
De regel die begint met 'for (a=0;a<=aantal;...' doet dat wegschrijven.
Zoals het scriptje
hier staat, met " >> filenaam" weggecommentarieerd, zet de data in de
goede volgorde op het scherm. Als ik " >> filenaam" toevoeg, worden de
regels IN OMGEKEERDE VOLGORDE naar filenaam geschreven.
Veel krabben op het hoofd is het gevolg.
awk '{
if (substr($0,1,5)=="# Dat")
{
ident=substr($0,18);
filenaam="log_"ident
command="rm "filenaam
system(command);
}
if (substr($0,1,5)!="# err") regel[aantal++]=$0;
else
{
for (a=0;a<=aantal;a++) print regel[a]; # >> filenaam
print "logdata geschreven naar "filenaam
exit;
}
}' < $port
paai
More information about the Linux
mailing list