¿Cómo unir líneas que comienzan y terminan con un dígito y que constan de 1 a 6 caracteres?

¿Cómo unir líneas que comienzan y terminan con un dígito y que constan de 1 a 6 caracteres?

Tengo este siguiente archivo:

$ cat numbers
a1
12
12345
123456
19816282
1@$%6

Estoy usando grep "^[0-9]\{1,6\}$" numbersel cual me está dando los siguientes resultados:

12
12345

También estoy expectante 1@$%6por los resultados.

Respuesta1

El resultado es en realidad

12
12345
123456

Tu expresión regular significa "Una línea que consta de 1 a 6 dígitos y nada más."Así que 1@$%6no coincide.

Respuesta2

> grep "[0-9]\{1,6\}" numbers.txt
1
12
12345
123456
19816282
1@$%6

información relacionada