![]() |
|
|
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 |
| awk - Counting Reihe ähnlicher Linien | dhanamurthy | Shell Programmierung und Scripting | 8 | 05-16-2008 07:00 AM |
| Zählen Anzahl der Ereignisse | kingofprussia | UNIX for Dummies Questions & Answers | 1 | 04-01-2008 08:11 PM |
| Ich benötige Hilfe beim Zählen der Felder und Feld-Separatoren mit Nawk | scrappycc | Shell Programmierung und Scripting | 3 | 02-06-2008 11:47 PM |
| Zählen Anzahl von Dateien in einem Verzeichnis | iamalex | UNIX for Dummies Questions & Answers | 2 | 09-05-2005 11:13 AM |
| Zählen der Anzahl der Zeilen | nayeemmz | Linux | 6 | 01-19-2005 12:37 PM |
![]() |
|
|
LinkBack | Thread Tools | Suche diesen Thread | Rate Thread | Anzeige-Modi |
|
|
|
||||
|
Hilfe zur Zählung Anzahl der Bytes in einem Bereich,
Hi,
Ich habe eine Datei, die mit 300 Datensätze mit einer Belastung von Bereichen. zwei von ihnen sind: field_1 hat zwischen 8-9 Bytes dh 012345678, 0123456789 field_2 hat 10 Bytes, dh 01234567890 Ich möchte zu können Echo aus der Summe der jedem dieser Bereiche, dh 200 (die 8 - 9 bytes) 100 (über 10 Bytes) nicht sicher, wie dies zu tun, habe ich versucht wc-l: RR \u003d "wc-l Kunde Verzeichnis / Datei in.dat" die Datei im. dat ist ein Raum, in den Dateinamen? nicht sicher, ob es einen Unterschied macht? Ich kann nicht zu dieser Arbeit? jede mögliche Hilfe wäre appreceiated. |
|
||||
|
Verwenden Sie keine awk auf allen nicht so sicher, wie diese zu schreiben?
Ich brauche zwei Variablen, die Ausgabe der insgesamt 8 -9 Byte und 10 Byte, dh insgesamt 8-9 \u003d awk '(arr [length ($ 1)] + +) END (print "8 - 9 Byte", arr [8] + arr [9]) 'Pfad zur Datei? 10 \u003d awk '(arr [Länge ($ 2 )]++;) END (print "10 Bytes", arr [10]) 'Pfad zur Datei? Ist dies, wie würden Sie die Lösung von Jim? ![]() |
|
|||||
|
Es verwendet ein assoziatives Array, um zu verstehen, wie ein assoziatives Array in awk, siehe diesem Post Nicht in der Lage zu verstehen, assoziativen Art von awk-Arrays Über die Ausführung dieses awk-Skript, müssen Sie ihn in der gleichen Weise, wie er kodiert, seine nach Ihren Wünschen, wenn Sie nicht wissen, wie man sie auf Befehl Linie, dann hat es in einigen Shell-Skript, und führen Sie, dass Datei. Etwa so: Code:
#! /bin/ksh
awk '{ arr[length($1)]++; arr[length($2)]++; }
END {print "8 - 9 bytes", arr[8]+arr[9], " 10 bytes ", arr[10] } ' file
Speichern Sie diese Shell-Skript als "test", dann gehen Sie wie folgt vor: Code:
chmod +x test ./test |
![]() |
| Lesezeichen |
| Thread Tools | Suche diesen Thread |
| Anzeige-Modi | Rate this thread |
|
|