![]() |
Ciao e benvenuto da parte degli Stati Uniti al UNIX e Linux Forum! Grazie per la visita ed unirsi alla nostra Comunità Globale.
|
|
google unix.com
|
|||||||
| Forum | Registrati | Regole Forum | Collegamenti | Album | FAQ | Members List | Calendario | Ricerca | Today's Posts | Mark Forums Read |
| Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui. |
Più di UNIX e Linux Forum Argomenti potreste trovare utili
|
||||
| Filo | Thread Starter | Forum | Risposte | Ultimo Post |
| una stringa di parsing in uno script di shell | asutoshch | Shell scripting e di programmazione | 19 | 05-26-2008 10:18 PM |
| script shell parsing con sed | jjamd64 | UNIX for Dummies Domande & Risposte | 5 | 12-11-2007 04:51 PM |
| Parsing di una linea in Shell Script | unishiva | Shell scripting e di programmazione | 3 | 11-01-2007 04:30 PM |
| Guida in linea di parsing di un file CSV con Shell script | mihirk | Shell scripting e di programmazione | 10 | 06-24-2007 11:58 AM |
| Parsing di un file in Shell Script | sendhilmani123 | Shell scripting e di programmazione | 4 | 11-30-2006 02:29 AM |
![]() |
|
|
LinkBack | Thread Tools | Cerca in questo Thread | Rate Thread | Modalità di visualizzazione |
|
|
|
||||
|
Script di shell per l'analisi del file di log 300MB ..
sono relativamente nuovo di shell scripting.
Ho scritto uno script per l'analisi ad un grosso file. La logica è la seguente: Oltre a molti altri animali inutili, ci sono molti eventi di <abc> e corrispondente </ abc> tag. (Tutti questi siano correttamente chiuse) La mia esigenza è quella di trovare un particolare tag (ad esempio <data> 1234 </ dati>) racchiusi in qualsiasi punto tra <abc> </ abc> tag. Se trovati, ho per memorizzare 4a riga al di sotto del <abc> tag in un file temporaneo. Un tipico file di log somiglia a: ************************ <pqr> ...... alcuni dati alcuni altri dati ......... </ PQR> alcuni dati di testo ........... <abc> blah blah ..... <id> 12345 </ id> blah ... ...... <data> 1234 </ dati> </ abc> ........ ..... ..... <abc> blah blah ..... <id> 12345 </ id> blah ... ... </ abc> .......... <rst> ... ... </ primo> alcuni dati di testo ... **************************** Output dello script dovrebbe essere <id> 12345 </ id> memorizzati in alcuni file temporaneo. Lo script sto utilizzando è il seguente: ******************** rm-f temp.log filename \u003d $ 1 OK \u003d 0 mentre leggere line1 fare if [ "$ line1" \u003d "<abc>"], quindi OK \u003d 1 fi if [ "$ OK"-eq 1]; poi echo $ line1>> temp_file fi if [ "$ line1" \u003d "</ abc>"]; poi OK \u003d 0 fi if [ "$ OK"-eq 0], quindi if [-f temp_file], quindi mentre leggere line2 fare if [ "$ line2" \u003d "<data> 1234 </ dati>"]; poi cat temp_file | awk '(if (NR \u003d\u003d 4) (print ($ 0)))'>> temp.log fi fatto <temp_file rm temp_file fi fi done <$ filename.log ******************************* Il <abc> </ abc> tag provengono in ultima porzione generale (non sempre), da qualche parte dopo circa 500.000 linee ... e di solito, il file è di circa 700.000 linee. Lo script viene eseguito, e continua a funzionare, e mi trovo 2 record che sono nelle prime righe memorizzate nel file temporaneo. Ma dopo qualche 6-7 minuti, lo script termina bruscamente, dicendo: scriptname.sh prova: argomento previsto. Qualcuno mi può aiutare su questo? |
|
||||
|
Script non funziona ..
Citazione:
Dopo aver letto la sua risposta, si prega di leggere alcuni articoli su awk. In qualche modo, lo script non funziona ancora, e termina dicendo .. ********************** awk: record `/ risposta> Venerdì 00:27 :...' troppo lungo numero 22 ********************** Ho grandi speranze su di voi adesso Grazie |
![]() |
| Segnalibri |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|