• # rename

    Posté par . En réponse au message Regex - Modifier une heure dans une chaîne. Évalué à 5.

    Déjà attention avec rename, Debian a un rename qui gère regex et qui fonctionne totalement différemment de celui de utils-linux qu'on trouves généralement sur les autres distributions (et qui lui ne gère pas les regex).

    Sinon en bash avec le rename normal (celui de util-linux) :

    # récupérer le nom du fichier
    file=contexte_16-07-2016-110509.jpg
    # Récupérer la partie de la date qui nous intéresse
    date_old=${file:(-10):(-4)}
    # Calculer la nouvelle date
    date_new=$(date +%H%M%S --date "jan 1 1970 ${date_old:(-6):(-4)}:${date_old:(-4):(-2)}:${date_old:(-2)} 10 minutes ago 20 sec ago")
    # Renommer le fichier
    rename $date_old $date_new $file