All pastes #320563 Raw Edit

Comparar fecha

public shellscript v1 · immutable
#320563 ·published 2007-01-18 16:27 UTC
rendered paste body
#!/bin/bash# Escrito por Antonio Ognio <antonio at linux dot org dot pe>comparar_fecha () {  # El primer parámetro es la ruta absoluta o relativa   # al directorio  directorio=$1  contenedor=$(dirname $directorio)  nombre=$(basename $directorio)  # Verificar que el directorio exista  if [ ! -e $directorio ]  then    export ERROR="El directorio '$directorio'no existe"    return 3  fi  # Verificar que se trate de un directorio  if [ ! -d $directorio ]  then    export ERROR="La entrada '$directorio' no es un directorio"    return 3  fi  # Obtener la fecha  fecha_dir=`ls -l $contenedor | grep $nombre | cut -d ' ' -f6`  if [ -z $fecha_dir ]  then    export ERROR="La fecha del directorio esta en blanco"    return 3  fi  # Obtener la fecha del sistema  fecha_sys=$(date +%G-%m-%d)  # Comparar las fechas como dos simples cadenas de texto  if [[ $fecha_dir > $fecha_sys ]]  then    # echo "$fecha_dir es mayor que $fecha_sys"    return 1  fi  if [[ $fecha_dir == $fecha_sys ]]  then    # echo "$fecha_dir es igual a $fecha_sys"      return 0  fi  if [[ $fecha_dir < $fecha_sys ]]  then    # echo "$fecha_dir es menor que $fecha_sys"      return 2  fi}comparar_fecha "/home/gnrfan/FAB"case $? in  1)     echo -n "La fecha de creación del directorio $dir"     echo    "es posterior a la fecha de hoy"  ;;  0)     echo -n "La fecha de creación del directorio $dir"     echo    "es la misma que la de hoy"  ;;  2)     echo -n "La fecha de creación del directorio $dir"     echo    "es anterior a la fecha de hoy"  ;;  3)     echo -n "Ocurrio un error al comparar la fecha del"     echo    "directorio $dir con la fecha de hoy:"     echo    $ERROR  ;;  *)     echo    "El valor retornado por la función es desconocido"     echo    "Valor retornado: '$?'"  ;;