![]() |
Hei og Velkommen fra USA til UNIX og Linux Forums! Takk for besøket og Delta i vårt globale samfunn.
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her. |
Mer UNIX og Linux Forum Emner Du kan finne nyttig
|
||||
| Tråd | Tråd startet | Forum | Svar | Siste innlegg |
| analyseproblemer en streng i et shell script | asutoshch | Shell programmering og Skripting | 19 | 05-26-2008 09:18 |
| shell script analyseproblemer med sed | jjamd64 | UNIX for Dummies Spørsmål og svar | 5 | 12-11-2007 04:51 |
| Analyserer en linje i Shell Script | unishiva | Shell programmering og Skripting | 3 | 11-01-2007 04:30 |
| Hjelp i analyseproblemer en CSV-fil med Shell script | mihirk | Shell programmering og Skripting | 10 | 06-24-2007 10:58 |
| Analyseproblemer en fil i Shell Script | sendhilmani123 | Shell programmering og Skripting | 4 | 11-30-2006 02:29 |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
||||
|
Shell script for analyseproblemer 300mb loggfilen ..
er relativt ny på Shell-skripting.
Jeg har skrevet et manus for tolking av en stor fil. Logikken er: Bortsett fra masse annet unyttig materialer, er det mange forekomster av <abc> og tilsvarende </ abc>-koder. (Alle er skikkelig lukket) Mitt krav er å finne et bestemt merke (sier <data> 1234 </ data>) vedlagte hvor som helst mellom <abc> </ abc>-koder. Hvis funnet, jeg har til å lagre 4de linje under <abc> koden i en temp fil. En typisk loggfil ser slik ut: ************************ <pqr> ...... noen data noen andre data ......... </ pqr> noen tekstdata ........... <abc> blah blah ..... <id> 12345 </ id> blah ... ...... <data> 1234 </ data> </ abc> ........ ..... ..... <abc> blah blah ..... <id> 12345 </ id> blah ... ... </ abc> .......... <rst> ... ... </ RST> tekst data ... **************************** Output av skriptet skal <id> 12345 </ id> lagret i noen temp fil. Skriptet jeg bruker er: ******************** rm-f temp.log filename \u003d $ 1 OK \u003d 0 mens les linje1 gjøre if [ "$ linje1" \u003d "<abc>"]; da OK \u003d 1 fi if [ "$ OK"-eq 1]; deretter echo $ linje1>> temp_file fi if [ "$ linje1" \u003d "</ abc>"]; da OK \u003d 0 fi if [ "$ OK"-eq 0]; deretter if [-f temp_file]; deretter mens les Linje2 gjøre if [ "$ linje2" \u003d "<data> 1234 </ data>"]; da cat temp_file | awk '(if (NR \u003d\u003d 4) (print (0 $)))'>> temp.log fi gjort <temp_file rm temp_file fi fi gjort <$ filename.log ******************************* Den <abc> </ abc>-kodene kommer i den siste delen generelt (ikke alltid), et sted rundt etter 500000 linjer ... og vanligvis har filen rundt 700.000 linjer. Skriptet kjøres, og holder kjører, og jeg finner 2 poster som er i de innledende linjene lagret i temp fil. Men etter en 6-7 minutter, skript ender brått og sa: scriptname.sh test: argument forventet. Kan noen hjelpe meg ut på dette? |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|