Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

327
Vistas
Fecha de validación de Bash

Estoy escribiendo un script de shell y no sé por qué mi código de validación de fecha no funciona. Probé las siguientes soluciones a preguntas similares que encontré, pero is_valid siempre se establece en 1:

 date "+%m/%d/%Y" -d "$1" 2>1 > /dev/null //or.. date -d "2012-02-29" > /dev/null 2>&1 is_valid=$? #always set to 1, even when given a valid date

¿Cómo valido correctamente el formato de fecha? La fecha solo debe ser válida si tiene el formato MM/DD/YYYY

También probé esta solución: Linux Bash - Formato de fecha pero siempre rechazó la fecha también.

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

La date BSD que se incluye con Mac OS X no admite la opción -d (o más bien, usa -d para algo completamente diferente). Instale la date de GNU o use lo siguiente para validar su cadena de entrada:

 date -f "%Y-%m-%d" -j "2012-02-29" >/dev/null 2>&1

El -f proporciona el formato de entrada, y el -j le dice a la date que simplemente envíe la fecha, no intente configurar el reloj del sistema.

over 4 years ago · Santiago Trujillo Denunciar

0

Se me ocurrió esta pequeña función:

 function isDateInvalid() { date -d "$1" "+%m/%d/%Y" > /dev/null 2>&1 res=$? echo "$res" } isDateInvalid "2012-02-219" 1 isDateInvalid "2012-02-29" 0
over 4 years ago · Santiago Trujillo Denunciar

0

for y in {2013..2014}; do for m in {01..12}; do for d in {01..31}; do [[ ! "`date -jf %Y%m%d $y$m$d +%Y%m%d`" = "$y$m$d" ]] && continue echo $y.$m.$d done done done

si las cadenas coinciden, el bucle continuará...

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda