Bonjour,
J'ai utilisé l'aide de ChatGPT pour créer de nombreux scripts, ce qui m'a été très utile. Cependant, parfois, il y a des obstacles et je passe des après-midis entières à essayer de les surmonter...
Mon objectif est de créer des dossiers allant du 24 mai 2024 jusqu'au 31 juin 2024. Pour cela, je souhaite avoir un dossier par jour, présenté comme suit :
[1] Mer-24-04-2024
[2] Jeu-25-04-2024
etc...
Cependant, le script de ChatGPT me donne ce résultat :
[1] 01] Mer 01-05-2024
[1] 01] Sam 01-06-2024
[1] 24] Mer 24-04-2024
[2] 02] Dim 02-06-2024
[2] 02] Jeu 02-05-2024
[2] 25] Jeu 25-04-2024
[3] 03] Lun 03-06-2024
[3] 03] Ven 03-05-2024
[3] 26] Ven 26-04-2024
[4] 04] Mar 04-06-2024
[4] 04] Sam 04-05-2024
[4] 27] Sam 27-04-2024
etc...
etc...
Il ajoute "01]" avant la date et cela rend la présentation désordonnée.
En outre, j'aimerais que chaque dossier contienne un sous-dossier intitulé "Photos".
Voici le script que ChatGPT m'a fourni :
À terme, j'aimerais intégrer ce processus dans Automator afin que celui-ci me demande la date de début, la date de fin, s'il veut que je crée des sous-dossiers ou non, et si oui, combien et quel serait leur nom.
Je vous remercie de votre aide.
J'ai utilisé l'aide de ChatGPT pour créer de nombreux scripts, ce qui m'a été très utile. Cependant, parfois, il y a des obstacles et je passe des après-midis entières à essayer de les surmonter...
Mon objectif est de créer des dossiers allant du 24 mai 2024 jusqu'au 31 juin 2024. Pour cela, je souhaite avoir un dossier par jour, présenté comme suit :
[1] Mer-24-04-2024
[2] Jeu-25-04-2024
etc...
Cependant, le script de ChatGPT me donne ce résultat :
[1] 01] Mer 01-05-2024
[1] 01] Sam 01-06-2024
[1] 24] Mer 24-04-2024
[2] 02] Dim 02-06-2024
[2] 02] Jeu 02-05-2024
[2] 25] Jeu 25-04-2024
[3] 03] Lun 03-06-2024
[3] 03] Ven 03-05-2024
[3] 26] Ven 26-04-2024
[4] 04] Mar 04-06-2024
[4] 04] Sam 04-05-2024
[4] 27] Sam 27-04-2024
etc...
etc...
Il ajoute "01]" avant la date et cela rend la présentation désordonnée.
En outre, j'aimerais que chaque dossier contienne un sous-dossier intitulé "Photos".
Voici le script que ChatGPT m'a fourni :
Bloc de code:
#!/bin/bash
# Chemin du dossier où les dossiers seront créés
folder_path="/Users/gregoryen/Desktop/Secret"
# Assurez-vous que le chemin du dossier existe
mkdir -p "$folder_path"
# Date de début et fin
start_date="2024-04-24"
end_date="2024-06-30"
# Nombre de jours dans chaque mois (pour prendre en compte les mois de 30 et 31 jours)
declare -a days_in_month=(31 30 31 30 31 31)
# Conversion de la date de début en un format plus simple pour la comparaison
start_timestamp=$(date -j -f "%Y-%m-%d" "$start_date" +%s)
current_timestamp=$start_timestamp
# Compteur pour les préfixes
prefix_counter=1
# Mois précédent initialisé avec le mois de départ
previous_month=$(date -j -f "%s" "$start_timestamp" "+%m")
# Boucle pour chaque jour entre le 1er mai 2024 et le 30 juin 2024
while [ "$current_timestamp" -le "$(date -j -f "%Y-%m-%d" "$end_date" +%s)" ]; do
# Convertir le timestamp en date au format souhaité
folder_name=$(date -j -f "%s" "$current_timestamp" "+[%d] %a %d-%m-%Y")
# Remplacer le nom anglais du jour par le nom français
folder_name=$(echo "$folder_name" | sed 's/Mon/Lun/g; s/Tue/Mar/g; s/Wed/Mer/g; s/Thu/Jeu/g; s/Fri/Ven/g; s/Sat/Sam/g; s/Sun/Dim/g')
# Remplacer le numéro du mois par son nom abrégé en français
month_day=$(date -j -f "%s" "$current_timestamp" "+%d")
month=$(date -j -f "%s" "$current_timestamp" "+%m")
if [ "$month" != "$previous_month" ]; then
prefix_counter=1
previous_month=$month
fi
# Ajouter le préfixe au nom du dossier
folder_name="[$prefix_counter] ${folder_name#*[}"
# Créer le dossier
mkdir -p "$folder_path/$folder_name"
# Incrémenter le timestamp d'un jour
current_timestamp=$(($current_timestamp + 86400))
# Incrémenter le compteur de préfixe
((prefix_counter++))
done
echo "Les dossiers ont été créés avec succès dans $folder_path."
À terme, j'aimerais intégrer ce processus dans Automator afin que celui-ci me demande la date de début, la date de fin, s'il veut que je crée des sous-dossiers ou non, et si oui, combien et quel serait leur nom.
Je vous remercie de votre aide.