![]() |
|
|
Google unix.com
|
|||||||
| Foren | Registrieren | Forum-Regeln | Links | Alben | FAQ | Benutzerliste | Kalender | Suche | Die heutige Beiträge | Alle Foren als gelesen markieren |
| UNIX for Dummies Questions & Answers Wenn Sie nicht sicher sind, wo Sie eine UNIX-oder Linux-Frage, post it here. Alle UNIX-und Linux-Anfänger willkommen! |
Mehr UNIX-und Linux-Forum Themen Vielleicht finden Sie hilfreiche
|
||||
| Faden | Thread Starter | Forum | Antworten | Last Post |
| Suche nach Namen in mehrere Dateien | Rally_Point | UNIX for Dummies Questions & Answers | 3 | 02-23-2009 08:36 PM |
| Suche nach vermissten sequentielle Datei-Namen | Julolidine | Shell Programmierung und Scripting | 2 | 07-03-2008 12:52 AM |
| Suche nach Dateien mit Namen, die eine reelle Zahl größer als difined. | harmonwood | Shell Programmierung und Scripting | 2 | 11-09-2007 10:28 AM |
| Suche nach doppelten Dateien nach Größe und Muster, das mit der Suche und ihre Anzahl | jerome Sukumar | Shell Programmierung und Scripting | 2 | 12-01-2006 04:20 AM |
| So finden Sie Großbuchstaben, Namen in einer Datei zu finden, ohne Worte zu Beginn des Satzes | kev269 | Shell Programmierung und Scripting | 1 | 04-10-2006 10:35 PM |
![]() |
|
|
LinkBack | Thread Tools | Suche diesen Thread | Rate Thread | Anzeige-Modi |
|
|
|
||||
|
Suche nach Namen in mehreren Dateien - zweiter Versuch
Ich konnte sie nicht finden die Original-Thread, die ich und da ich nicht um eine endgültige Antwort, habe ich ich es erneut versuchen. Vielleicht kann ich beschreiben, was ich will ein wenig besser.
Ich habe zwei Dateien, die mit Tausenden von Namen alle getrennt durch neue Zeile. Ich möchte wissen, ob der Name in Datei1 "erscheint auch überall in der Datei 2 dann drucken Sie es aus für mich (wenn Ausgang ist nicht das Problem). Ich habe gedacht, dass es vielleicht eine Möglichkeit, zu Fuß durch die erste Datei und mit jeder Zeile die dann zu Fuß durch jede Zeile in der zweiten Datei (so etwas wie eine verschachtelte Schleife Erklärung) und dann von dort aus. Ich frage mich, wenn das Werk, wenn es einen besseren und einfacheren Weg. Danke |
|
||||
|
Verwenden Sie ein assoziatives Array in awk. Diese Namen findet, die in beiden Dateien. Es wird zwischen Groß-und Kleinschreibung empfindlich auf zusätzliche Räume - in anderen Worten, eine genaue Übereinstimmung Code:
awl '{ if(FILENAME=="file1") (arr[$0]++}
if(FILENAME=="file2") {if($0 in arr) {print $0)} }
}' file1 file2
Geschachtelte Schleifen wie Sie zuviel Zeit in Anspruch nehmen. Das ist ungefähr so Godd geht es nicht. |
|
||||
|
Zitat:
Etwas wie: Code:
while read name;do grep "$name" file2;done < file1 Und Sie können etwas tun, wie zB: Code:
while read name;do echo $name:;grep "$name" file2;done < file1 Oder eine andere Maßnahme auf der Grundlage von Rückgabewert von grep? Code:
while read name;do ;grep -q "$name" file2 && echo $name found in file2;done < file1 Und es würde helfen, wenn Sie konnten zeigen, die Quelle der Datei, wenn das nicht funktioniert. Haben Sie als Sortierung der Dateien und mit diff? Mit besten Grüßen / Lakris |
![]() |
| Lesezeichen |
| Thread Tools | Suche diesen Thread |
| Anzeige-Modi | Rate this thread |
|
|