![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrati | Regole Forum | Collegamenti | Album | FAQ | Members List | Calendario | Ricerca | Today's Posts | Mark Forums Read |
| UNIX for Dummies Domande & Risposte Se non sei sicuro dove pubblicare un UNIX o Linux domanda, posta da qui. Tutti i neofiti di Linux e UNIX benvenuto! |
Più di UNIX e Linux Forum Argomenti potreste trovare utili
|
||||
| Filo | Thread Starter | Forum | Risposte | Ultimo Post |
| CEP vs "Business Rules" | iBot | Complex Event Processing RSS News | 0 | 10-23-2007 12:00 AM |
| norme | VRN | Posta qui per contattare gli amministratori e moderatori del sito | 2 | 03-21-2006 09:25 AM |
| Regole | Tux | Posta qui per contattare gli amministratori e moderatori del sito | 2 | 01-20-2005 02:48 PM |
| regole? | Xskwizitboi | UNIX for Dummies Domande & Risposte | 1 | 12-02-2004 01:46 PM |
![]() |
|
|
LinkBack | Thread Tools | Cerca in questo Thread | Rate Thread | Modalità di visualizzazione |
|
|
|
||||
|
Sintassi / regolamento (Come posso fare?)
Ho un piccolo pezzo di codice che ho bisogno di scorrere 24 volte (per ogni ora di un giorno ).... ecco quello che appare come ora ... Codice:
while read hour file; do
if [ $hour -eq 00 ]; then
count=`awk -F, 'BEGIN { count=0 } ............. { count++ } END { print count }' $file`
hourly01=`expr $hourly1 + $trade_count`
elif [ $hour -eq 01 ]; then
count=`awk -F, 'BEGIN { count=0 } ............. { count++ } END { print count }' $file`
hourly02=`expr $hourly2 + $trade_count`
..................
fi
done < ls.txt
Come potete vedere è semplice, e più e più iterates, ma inutilmente (24 volte) ... Posso sostituire tutti i numeri con una variabile ... come tale .. non prendere il mio codice di lettera per lettera, prendete solo l'idea e mi dica se si può fare .. Codice:
for (x=00; x<=23; x++) {
if [ $hour -eq $x ]; then
count=`awk -F, 'BEGIN { count=0 } ............. { count++ } END { print count }' $file`
hourly$x=`expr ${hourly}$x + $trade_count`
fi
}
Thats' l'idea .. So che non ha utilizzato un sistema Unix per il circuito, Ma ho appena iniziato l'apprendimento unix e non per controllare ciò che appare come in UNIX ancora) .. Ma si può scrivere la sezione centrale (ogni occorrenza di $ x) il modo in cui ho scritto qui? Ultimo a cura di yongho; al 06/22/2005 05:48 PM.. |
|
||||
|
awk supporta array. Il Codice:
'{ count=0 } ............. { count++ } END { print count }'
parte potrebbe scrivere un array elemento invece di "contare di stampa". Invece di andare oltre questo pazzo, si consideri un buon libro, come il libro O'Reilly 'sed & Awk 'Se siete a Manhattan, Barnes e Noble ha. Risposta breve: in awk si può fare ciò che lei ha chiesto. Tutto in un unico pezzo di codice awk. |
|
||||
|
Vedo
Ora sto valutando farlo nel modo in cui è proposto, ma ho un'altra domanda sul metodo suggerito.
Il mio problema: Inizialmente mi ha qualcosa di simile ls-al | grep giu 22 | cut-c49-100>> myLs.txt di darmi solo il tempo e il nome del file di tutti i file per il mese di giugno 22. in un file di testo. Con file di testo che ho iniziato awking. Stai suggerendo che invece di utilizzare mentre ora di leggere il file che ho l'awk iniziare subito, per evitare di ripetere tutto quello che il codice che ho fatto. Poiché il file di testo con la LS detiene i nomi dei file dei file CSV, ho bisogno di essere in grado, a un certo punto, awk i file per eseguire alcuni calcoli contare. Non credo che potrei usare un nidificate awk .. all'interno di un awk awk per aprire i file trovati nella prima awk. (o potrei?). I'll pick up del libro durante il fine settimana, grazie. Ultimo a cura di yongho; al 06/23/2005 10:53 AM.. |
|
||||
|
awk supporta il sistema () come funzione in C e PHP.
È possibile creare una dinamica stringa, quindi passare al sistema di creare output. Non è che awk è meglio di script o viceversa - è solo male continuare a utilizzare diversi strumenti e rimbalzare avanti e indietro tra di loro. IMO. |
![]() |
| Segnalibri |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|