![]() |
Hallo und herzlich Willkommen aus den Vereinigten Staaten, die UNIX-und Linux-Foren! Vielen Dank für Ihren Besuch und die Teilnahme an unserem Global Community.
|
|
Google unix.com
|
|||||||
| Foren | Registrieren | Forum-Regeln | Links | Alben | FAQ | Benutzerliste | Kalender | Suche | Die heutige Beiträge | Alle Foren als gelesen markieren |
| Shell Programmierung und Scripting Post Fragen zu ksh, csh, sh, bash, Perl, PHP, sed, awk und anderen Shell-Skripte und Shell-Scripting-Sprachen hier. |
Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
|
||||
| Faden | Thread Starter | Forum | Antworten | Last Post |
| egrep-Syntax Frage | DKNUCKLES | Shell Programmierung und Scripting | 1 | 11-18-2007 04:46 PM |
| Awk Einfache Frage: Wenn Syntax | natdeamer | Shell Programmierung und Scripting | 1 | 09-10-2007 12:53 PM |
| noch ein weiteres Feld awk Syntax Frage | prkfriryce | Shell Programmierung und Scripting | 4 | 03-22-2007 01:13 PM |
| C-Shell: variable Syntax Frage | alex_5161 | SUN Solaris | 0 | 01-30-2007 02:43 PM |
| Frage: Nicht-rekursive Syntax finden | alexkav | UNIX for Dummies Questions & Answers | 6 | 03-10-2005 07:46 AM |
![]() |
|
|
LinkBack | Thread Tools | Suche diesen Thread | Rate Thread | Anzeige-Modi |
|
|
|
||||
|
Die Syntax von awk Frage
Hi es könnte jemand erklären, was in der folgenden Funktion / Erklärung für mich, im nur ein wenig verwirrt
Code \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) ) Diese Funktion wird später in das Skript mit awk "$ code" Anleitungen wäre sehr dankbar Prost |
|
|||||
|
Code \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) ) Richtig, erstens, die Field Separator ist auf "", was bedeutet, dass der Code mit einer CSV-Datei (Comma Separated Values). Dann werden die Daten von jedem Datensatz wird ausgegeben, formatiert printf. Sie können sehen, dass jedes Formatierungszeichen steht ein%-Zeichen. %-11s drucken bedeutet eine Zeichenkette linksbündig in einem weiten Feld von 11 Zeichen. Die% s% s% s bedeutet drucken drei Saiten. % 07.2f bedeutet, eine 7-stellige weites Feld bis auf zwei Dezimalstellen (Floating Point). % 14s Mittel 14 char breite rechtsbündig Bereich usw. Das \ n ist ein Zeilenumbruch. Dann, die verschiedenen Felder sind danach den Platz des% s, etc. Ein einfaches Beispiel, printf ( "% s-% s \ n", $ 1, $ 2) würde dazu führen, dass das erste Feld, einen Bindestrich und dann das zweite Feld ausgegeben werden, gefolgt von einem Zeilenumbruch. substr (String, Start, numchars) - zB substr ($ 2,9,2), diese werden return 2 Zeichen ab der 9. Charakter der zweite Feld des Datensatzes. Wenn Sie die Manual-Seite auf Ihrem System (man awk, aber der Mensch gawk ist besser), sie erklären, dass wir wahrscheinlich viel klarer als ich! Sie sollten wahrscheinlich check this out http://www.gnu.org/software/gawk/manual/gawk.html Wenn Sie GNU awk. Prost ZB |
![]() |
| Lesezeichen |
| Thread Tools | Suche diesen Thread |
| Anzeige-Modi | Rate this thread |
|
|