![]() |
Hello and Welcome-tól az Egyesült Államokat, hogy az UNIX és Linux Forums? Köszönjük, hogy meglátogatta és csatlakozik Globális Közösség.
|
|
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 |
| A UNIX a dummies Kérdések és válaszok Ha nem biztos benne, hogy hol osztályozhatom Unix vagy Linux kérdés, post it here. Minden UNIX és Linux newbies welcome! |
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 |
| Szállítmány kép alapján számú sorral | wahi80 | Shell programozás és Scripting | 2 | 06-03-2008 10:38 PM |
| Szállítmány egy fájl alapján a nyilvántartások más kép | er_ashu | Shell programozás és Scripting | 2 | 05-12-2008 05:34 PM |
| szétdarabolják nyilvántartást és hozzáadása a rekord egy fájlba | rsolap | Shell programozás és Scripting | 1 | 08-13-2007 02:58 PM |
| szétdarabolják kép alapján szöveget a fájlba | matrix1067 | Shell programozás és Scripting | 1 | 01-30-2006 08:45 PM |
| Szállítmány egy fájl alapján néhány feltételt, és azokat naming | srivsn | Shell programozás és Scripting | 1 | 12-07-2005 11:27 AM |
![]() |
|
|
LinkBack | Téma eszközök | Keresés a téma | Rate Thread | Megjelenítési módok |
|
|
|
||||
|
Szállítmány egy fájl alapján rekordot bűn egy másik fájlt
Mind,
Kapunk egy fájlt a nagy nincs nyilvántartás (rekordok változó lehet), és meg kell osztott meg két kép alapján egy másik fájlt. pl Fájl1: UHDR 2008112 "25.187", "00000022", "00" ,21-április-1991, "", "D", -000000519, 0000000000, "C",, 000.000.000, +000000000,000000000, "2", "" ,21-APR-1991 "8Y3H4", "0000004H", "00" ,16-április-1992, "", "H", -001621119, 0000000000, "C",, 000.000.000, +000000000,000000000, "2", "" ,21-APR-1991 : "95Y8U", "02100971", "00" ,03-MAR-1991, "", "H", -000004499, 0000000000, "",, 000.000.000, +000000000,000000000, "2", "US" ,21-APR-1991 "24.567", "02100973", "00" ,26-szeptember-1991, "", "H", -000000362, 0000000000, "",, 000.000.000, +000000000,000000000, "2", "US" ,21-APR-1991 -- -- -- UTRL 00144700 Fájl2: 2518720080512 2456720080512 1256720080512 8WE7820080512 8Y3H020080512 8Y3H220080512 8Y3H420080512 8Y3H620080512 -- -- -- -- Ha az első 5 karakter a 2-fájl illeszkedik a karakter 2-6 in fájl1, azt külön e nyilvántartásokat, és azokat egy másik fájlt és pihenés a nyilvántartást kell másolni egy másik fájlt. Próbáltam csökkenteni a parancs, hanem a fájl1 elég nagy, hogy a rengeteg időt, hogy az értékek egy változó, majd hasonlítsa. Van-e olyan módon, mely a fenti feladat elég gyors. Kérem, segítsen, mert sürgős szükség. Köszönöm előre. |
|
||||
|
Ha a grep tud olvasni minták egy fájlból (például GNU grep), próbálj ki valami ehhez hasonló.
Kód:
cut -c1-5 file2 >patterns grep -f patterns file1 >matches grep -f patterns -v file1 >nonmatches Kód:
sed 's/^\(.....\).*/^"\1",/' file2 >patterns Last edited by korszak; 05/13/2008 at 04:28 AM.. Reason: Magyarázd átdolgozott minták |
|
||||
|
Köszönet Franklin és időben.
Franklin, Én fpossible, meg tudja magyarázni wha aA cod eis csinál. Én vagyok az awk kezdő és ez segíteni fog nekem értelmezéséhez a dolgokat. Azt is, mit tegyek, ha nem akarom, hogy módosítja az eredeti fájlokat. Köszönet újra. |
|
||||
|
Kód:
awk 'NR==FNR{a[substr($0,1,5)];next}
Kód:
NF<3{next}
Kód:
substr($1,2,5) in a {print > "file1";next}
Kód:
{print > "file2"}
Az eredeti fájlok is kell maradnia. Üdvözlettel Last edited by Franklin52; 05-13-2008 at 02:03 PM.. Reason: nyelvi korrekció |
|
||||
|
Franklin,
You rock. De amikor használja ezt: Kód:
awk 'NR==FNR{a[substr($0,1,5)];next}
NF<3{next}
substr($1,2,5) in a {print > "matched.txt";next}
{print > "notmatched.txt"}' file2 file1
|
![]() |
| Könyvjelzõk |
| Téma eszközök | Keresés a téma |
| Megjelenítési módok | Rate this thread |
|
|