Como posso apagar tudo antes / depois de uma ocorrência específica de um caractere?

1

Entrada

|1|2|3|4|5|

Resultado

|3|4|

Como posso excluir tudo antes do número do pipe X | (3 neste exemplo) e tudo depois do pipe número Y (5 neste exemplo)?

    
por αԋɱҽԃ αмєяιcαη 20.12.2017 / 11:54

2 respostas

1

Em awk :

$ awk -F"|" -vOFS="|" '{print "|"$4,$5"|"}' file
|3|4|

Perl:

$ perl -F'\|' -lane 'print join "|", "",@F[3..4],""' file
|3|4|
    
por 20.12.2017 / 12:11
0

arquivo de entrada

example.txt

|1|2|3|4|5|

comando:

awk '{print substr($1,5,5)}' example.txt  

saída

|3|4|  
por 20.12.2017 / 18:55