![]() |
|
|
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 |
| egrep szintaxissal kérdés | DKNUCKLES | Shell programozás és Scripting | 1 | 11-18-2007 04:46 PM |
| Egyszerű awk kérdés: Ha Szintaxis | natdeamer | Shell programozás és Scripting | 1 | 09-10-2007 01:53 PM |
| még egy awk syntax kérdéses területen | prkfriryce | Shell programozás és Scripting | 4 | 03-22-2007 01:13 PM |
| C-shell: változó szintaxisa kérdés | alex_5161 | SUN Solaris | 0 | 01-30-2007 02:43 PM |
| Kérdés: nem rekurzív megtalálni syntax | alexkav | A UNIX a dummies Kérdések és válaszok | 6 | 03-10-2005 07:46 AM |
![]() |
|
|
LinkBack | Téma eszközök | Keresés a téma | Rate Thread | Megjelenítési módok |
|
|
|
||||
|
awk syntax kérdés
Hello tudna valaki elmagyarázza, mi történik a következő funkció / nyilatkozat nekem, im csak egy kicsit zavaros
kód \u003d 'BEGIN (FS \u003d","} ( printf ( "%-11s,% s% s% s,% 07.2f,% 14s,%-3s \ n", $ 1, substr ($ 2,9,2), substr ($ 2,6,2), substr ( $ 2,3,2), $ 9, $ 10, $ 12) A ) ezt a függvényt később a script segítségével az awk "$ code" iránymutatást lenne nagyra értékelt egészségére |
|
|||||
|
kód \u003d 'BEGIN (FS \u003d","}
( printf ( "%-11s,% s% s% s,% 07.2f,% 14s,%-3s \ n", $ 1, substr ($ 2,9,2), substr ($ 2,6,2), substr ( $ 2,3,2), $ 9, $ 10, $ 12) A ) Igaz, egyrészt a Mező elválasztó beállítása "," ami azt jelenti, hogy a kód számít bemeneti CSV (vesszővel elválasztott értékek). Ezután az adatok minden egyes rekord outputted, formázott a printf. Láthatjuk, hogy minden karakter formázási előzi meg egy% jelet. %-11s azt jelenti print egy string bal indokolt egy 11 karakter széles területen. A% s% s% s olyan nyomtatott három húrt. % 07.2f: a 7 jegyű széles területen, két tizedesjegy pontossággal (lebegőpontos szám). Olyan 14%-14s karakter széles jobb indokolt területen, stb \ n egy újsor. Ezután a különböző területek behelyettesítjük helyett a% s, stb Egy egyszerű példa: printf ( "% s-% s \ n", $ 1, $ 2) okozna Az első területen a kötőjelet, majd a második területen a kimeneten egy újsor. substr (string, start, numchars) - pl substr ($ 2,9,2), ez visszatér 2 karakter kezdődően 9. jellegét a második terület a rekordot. Ha megvan a kézikönyv oldalt a rendszer (man awk, de az ember gawk jobb), akkor az magyarázza, hogy valószínűleg sokkal tisztább, mint én! Érdemes talán ezt nézd meg http://www.gnu.org/software/gawk/manual/gawk.html Ha használja GNU awk. Egészségére ZB |
![]() |
| Könyvjelzõk |
| Téma eszközök | Keresés a téma |
| Megjelenítési módok | Rate this thread |
|
|