![]() |
|
|
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 |
| Regno Unito imprese rifuggire in tempo reale di analisi dei dati | iBot | Complex Event Processing RSS News | 0 | 07-14-2008 08:30 PM |
| An Introduction to Real-Time Data Integration | iBot | Oracle Aggiornamenti (RSS) | 0 | 04-06-2008 06:10 AM |
| fusione dei dati CSV utilizzando una linea dal guscio? | jjinca | Shell scripting e di programmazione | 2 | 08-13-2007 12:15 PM |
| Hai bisogno di aiuto per 2 file di dati di fusione | getdpg | Shell scripting e di programmazione | 2 | 07-12-2006 10:07 AM |
| La fusione dei dati | Ap | Shell scripting e di programmazione | 8 | 06-03-2005 04:14 AM |
![]() |
|
|
LinkBack | Thread Tools | Cerca in questo Thread | Rate Thread | Modalità di visualizzazione |
|
|
|
||||
|
Se si ha la prima uscita in file1 e la seconda uscita in file2: Codice:
awk '
NR==FNR{split($2,s,"/");i=s[2];a[i]=$3;next}
a[$7]{$0=$0 FS a[$7]}
{print}
' file2 file1
Se ottenete errori uso nawk, gawk / o usr/xpg4/bin/awk su Solaris. Saluti |
|
|||||
|
Citazione:
Un paio domande ... Im ancora istruzionene awk ... Può spiegare come funziona .. Quali le sue farlo I dont devo chiedere su altri script per il futuro e posso aiutare gli altri di più. really appreciate it. |
|
||||
|
Codice:
awk '
NR==FNR{split($2,s,"/");i=s[2];a[i]=$3;next}
a[$7]{$0=$0 FS a[$7]}
{print}
' file2 file1
Spiegazione: Il codice per il primo file (file2): Codice:
NR==FNR{split($2,s,"/");i=s[2];a[i]=$3;next}
NR \u003d\u003d FNR -> È vero quando si legge il primo file. split ($ 2, s ,"/") -> Abbiamo diviso il secondo campo per ottenere i tasti 2, 3 ecc i \u003d s [2] -> I è ora la chiave a [i] \u003d $ 3 -> Crea un array "a" con il tasto indice e assegnare il valore del campo per la 3 ° serie successivo -> Leggi la riga successiva e saltare il resto del codice Il codice per il secondo file (file1): Codice:
a[$7]{$0=$0 FS a[$7]}
{print}
uno [$ 7] ($ 0 \u003d $ 0 FS uno [$ 7]) -> Se il campo esiste in 7e l'array aggiungere uno fieldseperator e il valore della serie, dopo la linea (questo è il 3 ° settore delle prime file) (print) -> Stampa la linea. Hope this helps. Saluti |
|
|||||
|
ok c'è un problema, non vi è alcun controllo sulla base di tempo.
Avrei bisogno di controllare per vedere chi è connesso al pts / # tempo in base a ciò che è stato effettuato l'accesso. So che posso fare in perl, Ma non abbastanza. se ho: Lug 14 08:02:48 server1 su: - 0 user1-root Lug 14 09:13:23 server1 su: + 0 user1-root Lug 14 12:03:03 server1 su: + 0 user1-root Lug 14 18:15:13 server1 su: + 0 user2-root Lug 14 15:03:01 server1 su: + 0 user7-root e user1 pts / 0 10.0.0.1 gio lug 14 08:00 - 10:00 (02:00) user1 pts / 0 10.0.0.2 gio lug 14 11:00 - 13:00 (02:00) utente2 pts / 0 10.0.0.3 mercoledì 14 luglio 16:00 - 20:00 (04:00) user7 pts / 0 hostx mercoledì luglio 14 13:25 - 15:01 (02:35) Ottenere: Lug 14 08:02:48 server1 su: - 0 user1-root hostx Lug 14 09:13:23 server1 su: + 0 user1-root hostx Lug 14 12:03:03 server1 su: + 0 user1-root hostx Lug 14 18:15:13 server1 su: + 0 user2-root hostx Lug 14 15:03:01 server1 su: + 0 user7-root hostx Ultimo a cura di Ikon; al 07/17/2008 03:56 PM.. |
|
|||||
|
Citazione:
Nome utente: "userX" \u003d "userX" xxxxxxxx - pt: pt / "#" \u003d - "#" userX ....... Ora: ##:##:## all'interno ##:## - ##:## che non saranno sufficienti? |
![]() |
| Segnalibri |
| Tag |
| solaris |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|