Extrair texto entre duas barras e adicioná-lo ao final da linha depois de um caractere de tabulação

0

Eu tenho um arquivo de texto com esta aparência:

data/CON/001/raw_series_ST_MC_REG_SM.nii
data/PAT/001/raw_series_ST_MC_REG_SM.nii

Gostaria de alcançar algo assim:

data/CON/001/raw_series_ST_MC_REG_SM.nii TAB CON
data/PAT/001/raw_series_ST_MC_REG_SM.nii TAB PAT

Claro, guia nos meios de espaço.

Thx pela ajuda!

    
por Jan 01.10.2014 / 11:14

1 resposta

0

Aqui estão algumas opções:

awk '{split($0, a, /\//); print $0 "\t" a[2]}' file
awk -F/ -v OFS="\t" '{print $0, $2}' file

sed -r 's#^([^/]*/([^/]*)/.*)#\t#' file
sed 's#^\([^/]*/\([^/]*\)/.*\)#\t#' file
sed 'p; s#[^/]*/##; s#/.*##' file | paste - -

perl -F/ -lane 'print "$_\t$F[1]"' file
    
por 01.10.2014 / 12:43

Tags