[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Apagar linhas parcialmente repetidas
From: |
Flavio Cysne |
Subject: |
Re: [shell-script] Apagar linhas parcialmente repetidas |
Date: |
Thu, 19 Apr 2012 09:06:35 -0300 |
Fazendo isso em passos, acho que ficaria assim:
1. seleciona as linhas que contém o texto "Entrada 10_04", classifica em
ordem crescente e extrai apenas a primeira linha
2. seleciona as linhas que contém o texto "Saida 10_04", classifica em
ordem crescente e extrai apenas a última linha
seria algo como
- utiliza o sed ou o grep p/ pegar as linhas e, se achar necessário,
atribuir a uma variável
- utiliza o sort ou outro método/função de ordenação no retorno do passo
anterior
- cria um array com as linhas (talvez precise modificar o IFS p/ considerar
apenas o <ENTER>)
- extrai a posição do array de acordo com o necessidade (primeira posição
p/ a Entrada e última posição p/ a Saída
Espero ter ajudado.
Flávio Cysne
Em 19 de abril de 2012 05:48, elian.markes <address@hidden>escreveu:
> **
>
>
> Não conseguir pensa em uma maneira de excluir linhas que não são
> totalmente iguais, necessitando que uma das linhas nao seja apagada.
> Exemplo:
> Arquivo com conteúdo
>
> 01 Entrada 10_04 06:16:01 008
> 01 Entrada 10_04 06:16:07 008
> 01 Entrada 10_04 06:16:16 008
> 01 Entrada 10_04 06:16:32 008
> 01 Entrada 10_04 06:16:39 008
> 01 Entrada 10_04 09:44:44 008
> 01 Entrada 10_04 09:45:08 008
> 01 Saida 10_04 09:45:00 008
> 01 Saida 10_04 12:08:28 008
>
> Necessito apagar as linhas que a entrou e saiu mais de uma vez no dia
> 10_04, ficando a linha de entrada horário mais baixo e a linha de saida com
> horário mais alto.
>
> Exemplo:
> Sobrando do arquivo acima o conteúdo
>
> 01 Entrada 10_04 06:16:01 008
> 01 Saida 10_04 12:08:28 008
>
> Desde já agradeço
>
>
>
[As partes desta mensagem que não continham texto foram removidas]