Como podemos remover apenas os números com 0,1,2,3,4,5,6,7,8,9 caracteres de um arquivo? Quero dizer as linhas que correspondem a esse padrão.
Exemplo para linhas removíveis:
cat input.txt
1
123423113
8372
8472323
Exemplo de linhas que não devem ser removidas:
cat input.txt
1a
1245d45
8565438753
b39592
3827495Hx
Responder1
Usando sed
:
sed -i.bak -e '/^[0-9]\{1,9\}$/d' file
Usando perl
:
perl -i.bak -nle 'print unless /^[0-9]{1,9}$/' file
Responder2
perl -i.bak -nle 'print unless /^[0-9]{0,9}$/' file
Você solicitou que números de comprimento zero (ou seja, linhas vazias) também fossem removidos.