Ho un insieme di dati che assomiglia a questocercare più condizionata stringa con awk
col1 col2 col3 col4
ABC1 DEF1 GHI1 cond1
ABC2 DEF2 GHI2 cond1-cond2
ABC3 DEF3 GHI3 cond2/cond1
ABC4 DEF4 GHI4 cond2 cond1
ABC5 DEF5 GHI5 cond4/cond1
ABC6 DEF6 GHI6 cond1
ABC7 DEF7 GHI7 mcond1
ABC8 DEF8 GHI8 cond2
ABC9 DEF9 GHI9 cond1 at 50
ABCa DEFa GHIa con cond1
ABCb DEFb GHIb no. cond1
ABCc DEFc GHIc cond1 something
ABCc DEFc GHIc Mcond1
Sto cercando di scrivere un paio di comandi per separare i dati secondo il "col4" per ottenere:
Un file che contiene la stringa "cond1" con QUALSIASI prima o dopo ESCLUSO per le lettere "M" e "m". Attualmente sto usando questo comando (che non esclude M ed m, ovviamente) per questo:
awk 'BEGIN{IGNORECASE=1} $4 ~ /.cond1/ || $4 ~ /cond1./ ' /filepath.tab
prega, inoltre, non che il 4 °, 9 ° e il 11 ° righe di dati contengono spazi tra "cond1" e altri stringhe, voglio questo INCLUSO nel file. (Non il "" nel comando includere spazi?)
ho scritto un comando per ottenere un file che contiene 'cond1' solo nel 'col4'
awk 'BEGIN{IGNORECASE=1} $4 ~ /^cond1$/ ' /filepath.tab
si sta lavorando bene con la maggior parte dei dati, anche se io sono sempre questi 2 errori nei risultati:
ABC9 DEF9 GHI9 cond1 at 50 ABCc DEFc GHIc cond1 something
qualcuno può per favore mi aiuti con questi 2 comandi? Grazie.
Sto cercando una potenza di 3 file che non contiene duplicati, ecco un esempio: File1 (contenente tutte le combinazioni con cond1):
col1 col2 col3 col4
ABC2 DEF2 GHI2 cond1-cond2
ABC3 DEF3 GHI3 cond2/cond1
ABC4 DEF4 GHI4 cond2 cond1
ABC5 DEF5 GHI5 cond4/cond1
ABC9 DEF9 GHI9 cond1 at 50
ABCa DEFa GHIa con cond1
ABCb DEFb GHIb no. cond1
ABCc DEFc GHIc cond1 something
File2 (contenente COND1 solo):
col1 col2 col3 col4
ABC1 DEF1 GHI1 cond1
ABC6 DEF6 GHI6 cond1
File3 (contiene tutto ciò che non è stato incluso nel file1 e file2):
col1 col2 col3 col4
ABC7 DEF7 GHI7 mcond1
ABC8 DEF8 GHI8 cond2
ABCc DEFc GHIc Mcond1
Si noti che le file totali dei 3 file sono uguali a quelle del file originale Mi dispiace se questo sembra piuttosto complicato, ma questo è il caso che effettivamente ho.
Qual è il tuo desiderato produzione! –
Qual è il separatore tra le colonne? è tab? se il suo spazio 11a riga 4a colonna non conterrà 'cond1'. È la quinta colonna lì –
Sì, si tratta di un file separato da tabulazioni e, a volte, c'è un unico spazio tra le parole. (e sono sicuro che non si tratta di colonne diverse, perché questo era un file di grandi dimensioni e ho usato il taglio per togliere solo queste 4 colonne) – Error404