SED colunas de comutação em um arquivo delimitado por,

0

Eu tenho um arquivo com 65k linhas parecido com isto:

Mumford & Sons,Wilder Mind (Deluxe),Believe - Live,02 Oct 2016 10:25            
Mumford & Sons,Wilder Mind (Deluxe),Tompkins Square Park,02 Oct 2016 10:19          
Mumford & Sons,Wilder Mind (Deluxe),Believe,02 Oct 2016 10:16               
Bon Iver,22 A Million,00000 Million,02 Oct 2016 10:06           
Bon Iver,22 A Million,____45_____,02 Oct 2016 10:03         
Bon Iver,22 A Million,8 (circle),02 Oct 2016 09:58          

Eu tenho tentado muito, mas não consigo terminar. Eu preciso que pareça assim:

Mumford & Sons,Believe - Live,Wilder Mind (Deluxe),02 Oct 2016 10:25    

para que a segunda coluna seja trocada com a terceira. Existe alguma maneira simples de fazer isso?

    
por jsterr 03.10.2016 / 16:14

2 respostas

2

Isso funcionaria?

awk -F, '{A=$3; $3=$2; $2=A; print}' OFS=, yourfile

Basicamente, -F diz que você separa as colunas por , , o corpo alterna com a segunda e a terceira coluna e, em seguida, print da linha modificada.

    
por 03.10.2016 / 16:20
0
sed -r 's/(.*),(.*),(.*),(.*)/,,,/' file

Mumford & Sons,Believe - Live,Wilder Mind (Deluxe),02 Oct 2016 10:25            
Mumford & Sons,Tompkins Square Park,Wilder Mind (Deluxe),02 Oct 2016 10:19          
Mumford & Sons,Believe,Wilder Mind (Deluxe),02 Oct 2016 10:16               
Bon Iver,00000 Million,22 A Million,02 Oct 2016 10:06           
Bon Iver,____45_____,22 A Million,02 Oct 2016 10:03         
Bon Iver,8 (circle),22 A Million,02 Oct 2016 09:58   
    
por 21.01.2017 / 16:46

Tags