![]() |
|
|
google unix.com
|
|||||||
| Fórumok | Regisztráció | Fórum Szabályok | Linkek | Albumok | GYIK | Tagok listája | Naptár | Keres | Mai hozzászólások | Megjelöl Fórumok Olvas |
| Shell programozás és Scripting Post kérdések KSH, CSH, SH, Bash, Perl, PHP, SED, AWK ÉS EGYÉB shell szkriptek és shell script nyelvek itt. |
Több, UNIX és Linux fórum témák Ön által talált Hasznos
|
||||
| Szál | Thread Starter | Fórum | Válaszok | Utolsó hozzászólás |
| Van a Sed megoldást erre? | racbern | Shell programozás és Scripting | 1 | 03-13-2008 11:31 AM |
| szükség megoldás scripting | kkc | Shell programozás és Scripting | 14 | 01-31-2008 09:17 PM |
| A Sun és a backup megoldás | Jshwon | SUN Solaris | 1 | 10-23-2007 01:54 PM |
| Grep megoldás | Amruta Pitkar | Shell programozás és Scripting | 3 | 05-03-2007 03:57 AM |
| Linux, mint a NAS megoldás? | kjbaumann | Linux | 1 | 08-30-2006 01:09 PM |
![]() |
|
|
LinkBack | Téma eszközök | Keresés a téma | Rate Thread | Megjelenítési módok |
|
|
|
||||
|
Van egy awk megoldás ez?
Írok egy awk szkriptet, hogy bizonyos adatokat gyűjt az egyes területeken. Kellett egy awk megoldás ez, mert később vált funkcióval a forgatókönyvet. Én a következő adatokat, hogy szükség van output, egy sorban, de a rekord ível át multilple sorokat, és a nyilvántartások nem "együtt". Példa erre az alábbi tom, nyilvántartja "Tom" alatt van a 4 különböző tételek, de csak a szükséges adatok 2 a sorokat, én is kell az ugyanazon információk pat, Tim és tad, vagy akárki más, mint egy rekord az alábbi formátumot. Kód:
2008 fl01 LAC 2589 polk doal
xx 2008q1 mx
sect 25698541
Sales 08 Dept group
lead1 2008q1
tom
pat
tim
tad
lead1 07q4 07q3 07q2 07q1 06q4 06q3 jan
tom 0 96 0 3312 3624 0 312
pat 0 17 0 0 30 0 30
tim 357 03 04 25 3020 3120 20
tad 1734 0 0 0 5213 5213 0
lead1 feb mar apr may jun jul aug
tom 0 96 0 0 0 0 0
pat 0 17 0 0 0 0 0
tim 357 23 5 7 8 14 70
tad 1734 0 0 0 0 0 0
lead1 sept oct nov dec
tom 0 0 460 92
pat 0 0 240 0
tim 0 21 1800 0
tad 0 0 672 0
2008 fl01 LAC 2589 polk doal
yy 2008q1 mx
sect 2569852
Sales 08 Dept group
Kellett a következő kimenetet adja: Kód:
lead1 07q4 07q1 06q4 06q3 sept oct nov tim 357 25 3020 3120 0 21 1800 tad 1734 0 5213 5213 0 0 672 Van egy awk megoldás ez? köszönöm előre is ezt, mert úgy gondolom, ez olyan nehéz. |
|
||||
|
Idézet:
|
|
||||
|
Idézet:
|
|
|||||
|
Kód:
awk 'NR == 1 { print "lead1 07q4 07q1 06q4 06q3 sept oct nov tot" }
$1 ~ "^("users")$" && NF > 1 {
x[$1]++
if (x[$1] == 1) {
p[$1] = sprintf ("%s\t%s\t%s\t%s\t%s", $1, $2, $5, $6, $7)
t[$1] = $2 + $5
}
if (x[$1] == 3) {
printf "%s\t%s\t%s\t%s\t%d\n", p[$1], $2, $3, $4, t[$1]
}
}' users="tim|tad" file
|
|
||||
|
Idézet:
|
![]() |
| Könyvjelzõk |
| Címkék |
| Solaris |
| Téma eszközök | Keresés a téma |
| Megjelenítési módok | Rate this thread |
|
|