Primeiro de tudo, você definitivamente não quer abrir o arquivo em um editor (é muito grande para editar dessa forma).
Em vez disso, se você quiser apenas identificar se o arquivo contém algo diferente de A
, T
, C
e G
, você pode fazer isso com
grep '[^ATCG]' filename
Isso retornaria todas as linhas que continham algo diferente daqueles quatro caracteres.
Se você quiser deletar esses caracteres do arquivo, você pode fazê-lo com
tr -c -d 'ATCG\n' <filename >newfilename
(se esta é a maneira correta de "corrigir" o arquivo ou não, eu não sei)
Isso removeria todos os caracteres no arquivo que não são um dos quatro e também manteria novas linhas ( \n
). O arquivo editado seria gravado em newfilename
.
Se for um erro sistemático que adicionou algo ao arquivo, isso poderá ser corrigido por sed
ou awk
, mas ainda não sabemos como são seus dados.
Se você tiver o arquivo aberto em vi
ou vim
, o comando
/[^ATCG]
encontrará o próximo caractere no buffer de edição que não é A
, T
, C
ou G
.
E :%s/[^ATCG]//g
removerá todos eles.