![]() |
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 |
| Druckzeile vor Spalte 1 Übergänge | ajp7701 | Shell Programmierung und Scripting | 2 | 04-17-2008 11:05 PM |
| Wie lese ich die Spalte und die Werte unter der Spalte | gemini106 | Shell Programmierung und Scripting | 6 | 03-28-2008 07:05 AM |
| Können wir "tr" Kommando zum Drucken 5. Spalte der Ausgabe von 'ls-l' | Nidhi2177 | Shell Programmierung und Scripting | 4 | 09-17-2007 06:53 AM |
| drucken Spalte mit awk | cdfd123 | Shell Programmierung und Scripting | 2 | 07-26-2007 01:15 PM |
| können awk drucken Spalte mit einer Variable? | jambesh | Shell Programmierung und Scripting | 36 | 09-26-2006 07:39 AM |
![]() |
|
|
LinkBack | Thread Tools | Suche diesen Thread | Rate Thread | Anzeige-Modi |
|
|
|
||||
|
Drucken Zeile, wenn Wert in Spalte 1 ist das erste Auftreten
Hi All,
Ich hätte gerne ein Skript, welches in der Lage, um die unten. Drucken Sie die ganze Reihe, wenn column1 die "0001" für die folgenden Beispiel ist die erste Auftreten. Nachfolgende "0001" Eintritt wird nicht ausgedruckt werden und so weiter. Kann jeder Experte helfen? Eingang: 0001 k \u003d 40 0001 k \u003d 2 0002 k \u003d 1 0003 k \u003d 1 0004 k \u003d 77 0004 k \u003d 1 0005 k \u003d 88 0005 k \u003d 6 Leistung: 0001 k \u003d 40 0002 k \u003d 1 0003 k \u003d 1 0004 k \u003d 77 0005 k \u003d 88 |
|
||||
|
Code:
$ cat buf 0001 k= 40 0001 k= 2 0002 k= 1 0003 k= 1 0004 k= 77 0004 k= 1 0005 k= 88 0005 k= 6 $ perl -n -e '($num) = split /=/; next if $found[$num]; print; $found[$num] = 1' buf 0001 k= 40 0002 k= 1 0003 k= 1 0004 k= 77 0005 k= 88 |
|
||||
|
$ cat test
0001 k \u003d 40 0001 k \u003d 2 0002 k \u003d 1 0003 k \u003d 1 0004 k \u003d 77 0004 k \u003d 1 0005 k \u003d 88 0005 k \u003d 6 for i in `cat test | cut-d" "-f1` tun grep "$ i"-Test | head -1>> out.txt getan sort-u out.txt 0001 k \u003d 40 0002 k \u003d 1 0003 k \u003d 1 0004 k \u003d 77 0005 k \u003d 88 |
|
||||
|
Zitat:
Der perl Code scheint zu funktionieren, nicht aber die awk. Können Sie mir helfen? Ich verwende Solaris durch die Art und Weise. Auch können Sie Ihre perl Code, damit kann ich besser verstehen. Was ist die Funktion "-ane" Code:
$ nawk '!x[$1]++' file x[$1]++': Event not found $ awk '!x[$1]++' file x[$1]++': Event not found $ /usr/xpg4/bin/awk '!x[$1]++' file x[$1]++': Event not found Zuletzt bearbeitet von Raynon; am 03-17-2008 09:12 PM.. |
![]() |
| Lesezeichen |
| Tags |
| solaris |
| Thread Tools | Suche diesen Thread |
| Anzeige-Modi | Rate this thread |
|
|