![]() |
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 |
| 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 |
| Comunicati di sviluppo: Linux Mint 4.0 Beta "Fluxbox", 4.0 Alpha "Debian" | iBot | UNIX e Linux RSS News | 0 | 01-04-2008 03:00 PM |
| Spiegare la linea "mn_code \u003d` env | grep ".. mn" | awk-F "\u003d" '(print $ 2)' `" | Lokesha | UNIX for Dummies Domande & Risposte | 4 | 12-20-2007 01:52 AM |
| N. utpmx ingresso: è necessario eseguire la voce "login" dal livello più basso "guscio" | peterpan | UNIX for Dummies Domande & Risposte | 0 | 01-18-2006 04:15 AM |
| unire due linee quando la seconda linea contiene "DOLLARO USA" | powah | Shell scripting e di programmazione | 2 | 10-21-2005 06:30 PM |
| Aiuto ~ ~ aderire e "multijoin" | hyo77 | Shell scripting e di programmazione | 1 | 11-19-2003 01:20 AM |
![]() |
|
|
LinkBack | Thread Tools | Cerca in questo Thread | Rate Thread | Modalità di visualizzazione |
|
|
|
||||
|
bisogno di aiuto per l'utilizzo di "aderire"
Cari esperti,
Ho urgente bisogno di sapere come partecipare a queste 2 file che corrispondono. Ho un file che si presenta come Citazione:
Citazione:
Sara |
|
||||
|
Due cose:
Io non ho mai usato aderire, in modo che stai andando, probabilmente per ottenere una migliore risposta da parte di qualcun altro. Non ho trovato il problema dichiarazione molto chiara, e guardando i dati non ha aiutato molto. Sembra che non vi è alcuna comunanza tra i dati. Ad esempio, sono i primi commenti da parte dei due file suppone correlata? 1-0-0060122450000 0060122000550 Sono i numeri 00060122 quello che stai cercando di entrare su? Se sì, qual è l'output desiderato dopo sei? In ogni caso, ho sperimentato un po 'di aderire e ha trovato che i risultati possano essere facilmente inviati tramite awk semplicemente stampare i campi necessari. Forse si dovrebbe approccio come questo. Se pubblichi una descrizione più dettagliata di ciò che stai dopo che può aiutare. |
|
||||
|
Mi spiace non è stato preciso.
I due file sono enormi, oltre 2 milioni di dischi ciascuno. Tuttavia, il formato è lo stesso. Unica differenza è che è un file aggiuntivo "1-0 -" o "1-1 -" o "1-3 -". Im facendo un lungo cammino da taglio 1-4 caratteri e quindi utilizzando pasta e di partecipare di nuovo più tardi. Apprezzare se potesse vorrei sapere come farlo utilizzando awk. Grazie! SARA |
|
||||
|
Bene la mia ipotesi su ciò che si stava cercando di fare è stato male, così la mia soluzione non awk pan per me. Tuttavia mi ha dato un colpo con un breve script python davvero, e penso possa avere ciò di cui hai bisogno.
Per essere onesti, non è ancora, mi dia una chiara idea di quello che si voleva l'output per sembrare, quindi ecco quello che ho assunto. Se ho sbagliato, quindi dispiace, questo è il mio ultimo colpo. Utilizzando le prime quattro righe di dati, credo che si desidera che la produzione: 0060122450000 2000550 0060122450001 2000632 0060122450002 2001374 0060122450006 2004006 Il primo numero è da file_a con i primi quattro caratteri tagliato fuori. Il secondo numero è il primo valore spogliato off. Se questo è corretto, quindi ecco un super semplice script python per ottenere che per voi: script di nome: foo.py # Aprire il file di dati fa \u003d open ( 'file_a', 'rb') fb \u003d open ( 'file_b', 'rb') # Vai attraverso il file riga per riga "stripping" appena fuori le parti # Che si desidera conservare. Anche il capo striscia dalla fine. per la linea in fa: Bita \u003d linea [4]. lamelle ( '\ n') tmpb \u003d fb.readline (). lamelle ( '\ n') # Si potrebbe aggiungere un chk qui per garantire tmpb Bita partite. Devi avere a che fare qualche ulteriore taglio di se. Con milioni di record, I'd do it. bitb \u003d tmpb [-7:] Bita stampa, bitb # Chiude i file fa.close () fb.close () Eseguire lo script di questo tipo: shellPrompt $ python foo.py Lo script rende l'ipotesi che il vostro file di dati vengono associati correttamente, con le voci corrispondenti posizione saggia tutti fino in fondo. Se non sono, quindi questo non funzionerà senza modifiche. I vostri dati saranno sbagliato se i valori sono cambiati. E infine, ci sono probabilmente più elegante guscio python o tecniche di farlo, ma funziona. Buona fortuna. Ultimo a cura di H2OBoodle; al 02/02/2008 08:18 AM.. Motivo: dare maggiori informazioni su come eseguire lo script, mettere in guardia sulla corruzione dei dati se i dati non allineati. |
|
||||
|
unire
Aismann
Will you pls rendere chiaro ciò che si vuole nel file di output? vedere per il successo esecuzione di aderire commd si richiede il campo dovrebbe essere della stessa lunghezza e ordinato nello stesso ordine. vale a dire se cifre -> sort-n e se alfabet quindi -> sort-d. sia il modo che il file verrà ordinato in base allo stesso ordine e per una più veloce (un po ') l'esecuzione, come tenere il campo e l'uso 1. aderire -1 1 -2 1-t (il delimitatore se hai utilizzato uno)-O 1,1 1,2 1,3 file1 file 2> file di output. E il lavoro è fatto. Gustare. |
![]() |
| Segnalibri |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|