Foros del Web » Administración de Sistemas » Unix / Linux »

Expresiones regulares

Estas en el tema de Expresiones regulares en el foro de Unix / Linux en Foros del Web. Buenas, estoy iniciándome en esto en la universidad y me han pedido lo siguiente. -Escribir la orden necesaria para buscar en el directorio padre del ...
  #1 (permalink)  
Antiguo 17/12/2015, 05:03
 
Fecha de Ingreso: marzo-2013
Mensajes: 51
Antigüedad: 11 años, 1 mes
Puntos: 2
Expresiones regulares

Buenas, estoy iniciándome en esto en la universidad y me han pedido lo siguiente.

-Escribir la orden necesaria para buscar en el directorio padre del actual, los archivos del usuario (mi usuario) que hayan sido accedidos hace mas de 5 dias y cuyo nombre comience por minúsculas y luego 5 caracteres cualquiera.

Yo he hecho

Código:
find .. -user miusuario -atime +5 -name [a-z]\{5\} -print
¿Estoy haciéndolo bien?, ¿Está bien la expresión regular?

Gracias

Última edición por jcastro3; 17/12/2015 a las 05:07 Razón: Me faltaba el -print
  #2 (permalink)  
Antiguo 17/12/2015, 08:37
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Expresiones regulares

No, no estás haciéndolo bien. El predicado "-name" de GNU find acepta expresiones de tipo GLOB (los comodines de la shell, como ? o *), no expresiones regulares extendidas como la que estás usando en tu ejemplo.

Además, incluso si tu expresión fuese válida, no coincide con "minúscula y 5 caracteres cualquiera" sino con exactamente 5 minúsculas (el cuantificador "{5}" aplica al patrón inmediatamente anterior).

La expresión que buscás es [a-z]?????


Consideraciones:

- El tiempo de último acceso POR LO GENERAL no se guarda, por motivos de rendimiento.
- [a-z] no incluye caracteres fuera del rango ASCII, para eso deberías usar [[:lower:]]:

Código BASH:
Ver original
  1. ~$ touch unaprueba otraprueba ñoqui
  2. ~$ echo [[:lower:]]*
  3. unaprueba otraprueba ñoqui
  4. ~$ echo [a-z]*
  5. unaprueba otraprueba
  #3 (permalink)  
Antiguo 17/12/2015, 09:33
 
Fecha de Ingreso: marzo-2013
Mensajes: 51
Antigüedad: 11 años, 1 mes
Puntos: 2
Respuesta: Expresiones regulares

De acuerdo, lo daré una vuelta con [[:lower:]] a ver si lo consigo, gracias por la orientación.

Etiquetas: consola, linux
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:44.