Concatenação na Bash Scripting Shell

0

Eu quero verificar se 2 linhas têm igual a $ 4 meu shell deve verificar se o diffrence entre $ 3 na linha 2 e $ 2 na linha 3 é igual a 1 ele deve concatenar ambas as linhas em uma assim

1;1000000000;1099999999;2
2;1100000000;1199999999;3
3;1200000000;1200004444;3

Saída

1;1000000000;1099999999;2
2;1100000000;1200004444;3

Eu não sei nem usar o awk ou outra coisa

    
por Mina 10.12.2013 / 08:51

1 resposta

3

Perl para o resgate:

perl -F';' -lane '
    if ($L[2] + 1 == $F[1] and $L[3] == $F[3]) {
        $L[2] = $F[2]
    } else {
        print join ";", @L if @L;
        @L = @F
    }
    END { print join ";", @L }
' file.csv
    
por choroba 10.12.2013 / 09:55