![]() |
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 |
| loop problema | paddock | Shell scripting e di programmazione | 2 | 09-23-2008 11:15 AM |
| per loop problema | mdap | Shell scripting e di programmazione | 3 | 08-16-2008 02:27 PM |
| Per problema di Loop | L'Osservatore | Shell scripting e di programmazione | 2 | 05-28-2008 03:43 AM |
| Problema con il ciclo while e SQL | nandajk | UNIX for Dummies Domande & Risposte | 20 | 05-04-2007 07:19 AM |
| problema con il ciclo while | mridula | Di programmazione ad alto livello | 1 | 12-11-2005 11:44 AM |
|
|
LinkBack | Thread Tools | Cerca in questo Thread | Rate Thread | Modalità di visualizzazione |
|
||||
|
Doppia ciclo while problema
Ciao a tutti, ho incontrato uno strano problema con il doppio ciclo while. L'obiettivo dei due anelli, mentre è quello di confrontare 2 file, tmplist.txt di riferimento è il file con l'elenco completo dei server. Si veda la foto allegata per la logica e la relazione tra input e output.
Il 2, mentre la ricerca dovrebbe loop server / test.csv in / tmplist.txt, riga per riga. Ad esempio, la ricerca prima voce in / test.csv server2 in / tmplist.txt, a partire dalla prima riga in / tmplist.txt (LINENUM \u003d 1), se non si trova quindi in uscita un 'na' e poi andare alla prossima riga in / tmplist.txt fino a quando non trova la corrispondenza server2, e aggiornare LINENUM allo stesso tempo. Altre procederà alla ricerca del prossimo server server3 in / tmplist.txt dal linea corrente in poi (dal momento che tutti i server sono sempre elencati in ordine alphabatic). La variabile LINENUM (indicatore del numero di riga) utilizzati nel ciclo while interiore. E 'come predefinito 1, dopo la se la condizione if [$ SERVER \u003d $ refs] è vero, si LINENUM incremento e poi rompere il ciclo while interno e continuare nel ciclo while esterno. Tuttavia, nel ciclo while esterno, ogni volta che si legge e loop SERVER CONTE, il LINENUM inizia dal valore iniziale di 1 volta invece incrementata dal LINENUM provenienti dal ciclo while interiore. Qui di seguito una parte del programma con i dettagli di 2 mentre loop. Chiunque potrebbe contribuire a spiegare a me ciò che è sbagliato? Questo è il mio primo incarico di UNIX, sarà veramente apprezzare il vostro aiuto! #! / bin / bash TYPE \u003d P2PS LINENUM \u003d 1 mentre leggere SERVER CONTE; fare cat tmplist.txt | mentre leggere LINE; fare Refs \u003d $ (head - $ LINENUM tmplist.txt | tail -1) if [$ SERVER \u003d $ refs], quindi lasciare LINENUM + + echo-n "," $ count>> t.csv pausa altro lasciare LINENUM + + echo-n ", NA">> t.csv continua fi fatto fatto <test.csv |
| Segnalibri |
| Tag |
| comandi Unix |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|