Egy kis AWK segítség kérés
Sziasztok,
Próbáltam AWK scriptet írni, de nagyon nem ment, ezért megkértem a ChatGPT-t, hogy írja meg nekem. Az adott feladat, egy program kimenetét feldolgozni az alábbi módon:
1. sor nem kell, átlépjük
minden további sorban az első két mező elválasztása " " szóköz mentén, míg az utolsó rész ami egy - jel után van legyen a harmadik mező.
példa:
pelda.txt
Header1 Header2 - Egyszó
Valami Szöveg - Több szó is lehet
Másik Sor - Még egy hosszabb kifejezés - van benne kötőjel
A hozzátartozó AWK script:
awk 'NR > 1 {
# Az első két szót (szöveg1, szöveg2) elválasztjuk
split($1, arr1, " "); # A szöveg1-t és szöveg2-t első lépésben szétválasztjuk
split($2, arr2, " "); # A szöveg2 után is szétválasztjuk
# Azokat az adatokat, amik a "-" után vannak, egy változóba tesszük
text = substr($0, index($0, " - ") + 3) # A "-" utáni szöveget változóba tesszük
print arr1[1],",",arr2[1], ",", text # Kinyomtatjuk az első két szót és a kifejezést
}' pelda.txt
Lehet ezt egyszerűsíteni, vagy "jóvanazúgy"? :)
- Tovább (Egy kis AWK segítség kérés)
- 643 megtekintés