Skip to content

Instantly share code, notes, and snippets.

@eric-pommereau
Last active December 7, 2020 15:35
Show Gist options
  • Save eric-pommereau/07c0baf9c82280587de5782623a41699 to your computer and use it in GitHub Desktop.
Save eric-pommereau/07c0baf9c82280587de5782623a41699 to your computer and use it in GitHub Desktop.
#!/bin/bash
# problématique : modifier la date de création d'un fichier en fonction de la date de modif (testé sur MACOS)
# Exemple d'appel : ./test.sh /Volumes/SD_SAV_3/videos/2019/ m4v prod
echo "###########################################################################"
echo "# Modification des dates de création en fontion des dates de modification #"
echo "###########################################################################"
echo " "
# Vérifier qu'il y a bien 3 arguments passés
if [ $# != 3 ]
then
echo "ERREUR : 2 arguments (dir, mask, test) attendus";
exit
fi
# récupération des 3 arguments
dir=$1
mask=$2
test=$3
# affichage de la valeur des 3 arguments
echo "Argument 1 / application sur le répertoire [dir]="${dir}
echo "Argument 2 / application sur le masque suivant : [mask]="${mask}
echo "Argument 3 / test : "${test}
# Attente d la touche entrée ou CTRL+C pour annuler
read -p "Tapez [ENTREE] pour continuer"
# Lister tous les fichiers du répertoire {dir} et du masque {mask}
for i in ${dir}*.${mask} ; do
# pour chaque fichier afficher les infos de date de modification
echo "Fichier ${i} -> modification de la date de création : " $(GetFileInfo -m "${i}");
# si l'argument 3 {test} vaut "prod" alors effectuer l'action de modification
if [ $3 == "prod" ] ;
then
# modifier la date de création (par la date de modification)
dateModified=$(GetFileInfo -m "${i}")
echo "Modif -> " ${dateModified}
SetFile -d "${dateModified}" "${i}"
fi
done ;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment