AWK-opgave (i windowsxp) mod betaling
Opgaven går i hovedsagen ud på at ændre en CSV-fil til en fixed format fil. Jeg er gået i stå, fordi AWK og formattering i printf() driller mig i output.Inden input, har jeg lavet en TR(ansform) hvor jeg har udskiftet (') med (blank) vha. cat details.csv| tr "'" " " > output.txt
Udpluk fra demo-fil :
4014, Security Update , Description , Reason
5001, User , Weak Password , Locked Out , Disabled
5002, User , Zone , Level , Recommended Level
5003, Share , Directory , Share ACL , Directory ACL
5005, Instance , Service , Account , Issue
5006, User , Zone , Level , Recommended Level
Nu vil jeg vha. AWK gerne have en output-fil i et fixed format:
Jeg har forsøgt med flg. AWK-statement (som har været varieret i utallige udgaver):
{printf ("%010s%-12s\n",$1,$2) > "output6"}
Hvilket for mig skulle betyde : formater $1 som tal med foranstående nuller og $2 fra kolonne 11 - 23 (venstre-stillet).
På den endelige fil vil der være flere felter, men hvis konceptet holder på dette - burde det være muligt at tilpasse det.
Jeg har været inde på at sætte RS="," som det jo nok burde være, da alt mellem hvert komma er eet felt, men det giver problemer med første felt.
Til sidst havde jeg forestillet mig at ændre ',' med ' ' i TR, men hvis det kan gøres i AWK samtidig er det også fint.
På en eller anden måde får jeg noget garbage i output-bufferen ser det ud til ?
De kinesiske tegn kan ikke ses i min editor det burde dog være blanke. Plus det er ikke alle linier der er med.
Hurtigt svar og løsning er påkrævet - for at betaling kan finde sted.
Poul
2001,䐀愀琀愀戀愀猀攀ഀ
2003,† User਍㈀  㠀Ⰰ †唀猀攀爀ഀ
2009, Login਍㈀㄀㜀㘀Ⰰ 䰀漀最椀渀ഀ
2177, Login਍㌀  ㄀Ⰰ 䐀爀椀瘀攀ഀ
3003,†† Web਍㌀  㔀Ⰰ †一愀洀攀ഀ
3006,†† Web਍㌀ ㄀㌀Ⰰ