Escrever programa que ignora uma linha

1. Escrever programa que ignora uma linha

LINER DE SOUZA SANTOS
linersantos

(usa Ubuntu)

Enviado em 27/10/2020 - 09:40h

Bom dia a todos.
Eu tenho um arquivo que tem, alternadamente, uma linha com caracteres e uma linha com números. Preciso escrever um código (pode ser em C/C++ ou em BASH) que ignore as linhas com caracteres, leia e envie para outro arquivo as linhas com números. Por exemplo, meu arquivo tem esse formato:
#A B C D (1a linha)
1 2 3 4 (2a linha)
#E F G H (3a linha)
5 6 7 8 (4a linha)
Conforme sugerido aqui no site, eu usei o comando grep:
grep -h [0-9] num_letter.dat >> num.dat
e para arquivos pequenos deu certo. Só que quando fui tentar usar para um arquivo grande (com 58000 linhas) ele nao ignorou as linhas com caracteres. Alguem sabe por que?

e eu preciso gravar apenas os números em outro arquivo:
1 2 3 4 (1a linha)
5 6 7 8 (2a linha)


  


2. MELHOR RESPOSTA

Matheus
pylm

(usa Gentoo)

Enviado em 27/10/2020 - 10:20h


Coloca um "-h" na chamada do grep pra suprimir o nome do arquivo.

3. Re: Escrever programa que ignora uma linha

Matheus
pylm

(usa Gentoo)

Enviado em 27/10/2020 - 10:03h


Tenta assim:


grep [0-9] numbers_letters.txt >> numbers.txt



4. Re: Escrever programa que ignora uma linha

LINER DE SOUZA SANTOS
linersantos

(usa Ubuntu)

Enviado em 27/10/2020 - 10:15h

Deu parcialmente certo...Ele só copiou os numeros mas aparece o nome do arquivo original na frente de cada linha.

ex.:
vnchcms.dat: 1.14324923e+03 4.28712361e-04 -4.80241030e-05 4.31393791e-04 4.54713570e-02 -7.59957149e-05 4.54714205e-02
vnchcms.dat: 1.17586155e+03 7.05240160e-04 -4.91916952e-05 7.06953680e-04 4.36001142e-02 -7.85876637e-05 4.36001851e-02

Tem como tirar isso?






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts