Cui ii place sa se joace cu awk, cum pot combina niste actiuni awk
intr-una singura?
Am asa ceva:
for k in `ls -d ?.*` ; do grep -H 'distance to' \
`ls -tr $k/OUTCAR.[ap][nr][te][ev]??` | tail -1 ; done | \
awk ' BEGIN { S1=0 } { S1=S1+$10; print $1, S1 } '
for k in `ls -dr ?.*` ; do grep -H 'distance to' \
`ls -tr $k/OUTCAR.[ap][nr][te][ev]??` | tail -1 ; done | \
awk ' BEGIN { S2=6 } { S2=S2-$11; print $1, S2 } '
for k in `ls -d ?.*` ; do grep -H 'energy without' \
`ls -tr $k/OUTCAR.[ap][nr][te][ev]??` | tail -1 ; done | \
awk ' { print $1, $NF }'
Prima și a doua nu stiu sa o combin ca prima face adunare de sus in
jos si a doua face scadere de jos in sus. A treia nu stiu sa o pun la
un loc cu nici una din celelalte doua ca trebuie facut o operatie
externa si awk zice ca nu-i place sa folosesc `ceva`.
As vrea sa-mi dea direct 4 coloane, prima fiind comuna celor trei
comenzi de mai sus, apoi fiecare awk sa mai scrie cite una... Sau nu
se poate ce vreau eu dintr-o singura parsare...
Mersi de hint. Am citit si manualul si nu gasesc nimic invecinat nici
cu gogu. Poate nu stiu ce sa-i dau sa caute :-(
In cel mai rau caz, sterg -H de la doua din ele, dau rezultatele in
fisiere temporare (a doua cu tac in loc de cat) si le lipesc cu paste.
Este ceva mai simplu?
Mersi.
Mugurel
_______________________________________________
RLUG mailing list
[email protected]
http://lists.lug.ro/mailman/listinfo/rlug