Estou trabalhando em um arquivo .txt que é o resultado de um programa de neurociência chamado fsl. Ele tem 2 colunas e quero remover a segunda, testo alguns dos códigos sugeridos, mas parece que os comandos do Linux não conseguiram separar as duas colunas. Alguma ideia de como descartar a segunda coluna? Por exemplo, eu tentei, cut -f1,1 num.txt
mas não funciona.
0 0.000000
49 1435.537231
11 322.263489
0 0.000000
0 0.000000
0 0.000000
0 0.000000
360 10546.804688
83 2431.624512
0 0.000000
Responder1
awk
é uma ferramenta poderosa, IMO, que vale a pena aprender pelo menos o básico. Existem muitos tutoriais. Para imprimir incondicionalmente a primeira coluna, tudo que você precisa é:
awk '{print $1}' input.txt
A vantagem cut
é que ele considerará qualquer caractere em branco como separador (embora em algumas implementações seja limitado apenas aos caracteres SPC e TAB), ignorará os iniciais e finais e considerará sequências de um ou mais espaços em branco comoumseparador.
Responder2
Parece um arquivo delimitado por espaço.
Para extrair a primeira coluna para um novo arquivo:
$ cut -d ' ' -f 1 data >data.new
A -d ' '
instrução diz cut
para usar um espaço como delimitador. O padrão é usar um caractere de tabulação.