Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 29/04/2025, à 16:22

ptilou007

Mkdir et variable sur nom de fichier ?

Bonjour,

J'ai sindé mes video en images, je cherche un script qui me range les images par nom de video.

Chaque images à le nom de la video, plus une incrementation numérique, certains film fond plus de 200 k d'images, et donc c'est en vue de me facilité la manipulation .

Je pense que c'est deeux boucles imbriqué, l'une mkdir et l'autre mv ?

Merci

Philippe

Dernière modification par ptilou007 (Le 29/04/2025, à 16:23)

Hors ligne

#2 Le 29/04/2025, à 17:44

Watael

Re : Mkdir et variable sur nom de fichier ?

salut,

c'est plus probablement

  • une seule boucle sur les images

  • récupération du nom de la vidéo dans le nom de l'image

  • si le répertoire n'existe pas, alors on le crée

  • on déplace l'image dans le répertoire

  • .

je me demande quand même pourquoi cela n'a pas été fait lors du découpage des vidéos en images !

tu bouclais sur les vidéos
tu créais le répertoire quand il n'existait pas
tu indiquais le répertoire où mettre les images au logiciel de montage/découpage
et hop!


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#3 Le 30/04/2025, à 12:16

ptilou007

Re : Mkdir et variable sur nom de fichier ?

bonjour,

d’une ia :

 #!/bin/bash

# Répertoire de travail (le dossier où sont les images)
WORKDIR="."
cd "$WORKDIR"

# Boucle sur les fichiers images (jpg, png, etc.)
for img in *.jpg *.jpeg *.png; do
    # Vérifie si le fichier existe (évite les erreurs si aucun .jpg/.png)
    [ -e "$img" ] || continue

    # Récupère le nom de la vidéo à partir du nom de l’image (avant le premier "_")
    base_name=$(echo "$img" | cut -d'_' -f1)

    # Crée le dossier si nécessaire
    mkdir -p "$base_name"

    # Déplace l'image dans le bon dossier
    mv "$img" "$base_name/"
done

echo "Organisation terminée."

vous voyez des erreur s ?


merci

philippe

Hors ligne

#4 Le 30/04/2025, à 13:21

Watael

Re : Mkdir et variable sur nom de fichier ?

des erreurs, pas vraiment; des maladresses plus ou moins grosses:
le shebang doit débuter dans la première colonne de la première ligne.
on indique toujours des chemins absolus.
on ne change pas de répertoire.
$base_name ne peut pas avoir d'enfants, donc -p est inutile.
créer le répertoire est nécessaire s'il n'existe pas; cela n'est pas testé.

tu as mis des guillemets autour de toutes les variables, et ça c'est bien. smile

#!/bin/bash

shopt -s nullglob #cf. help shopt

oussa=/chemin/repertoireImages

for img in "$oussa"/*.{jpg,jpeg,png} #cf. man bash /Développement des accolades
do
    imgName=${img##*/} #cf. man bash /Développement des paramètres
    destDir=${imgName%_*} #idem
    test -d "$oussa/$destDir" || mkdir "$oussa/$destDir"
    mv "img" "$oussa/$destDir"/
done

pas testé, a priori ça devrait marcher.

Dernière modification par Watael (Le 02/05/2025, à 17:12)


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#5 Le 30/04/2025, à 14:25

soshy

Re : Mkdir et variable sur nom de fichier ?

Watael a écrit :

$base_name ne peut pas avoir d'enfants, donc -p est inutile.
créer le répertoire est nécessaire s'il n'existe pas; cela n'est pas testé.

man mkdir a écrit :

-p, --parents
              no  error  if existing, make parent directories as needed

Donc en gros, ça fait le check de l'arborescence (y compris la profondeur 0), et ça crée si besoin. Ca ne sort jamais en erreur (sauf problème de droit lors de la création). Au final, dans notre cas, ça fait la même chose que ce que tu as écrit, juste plus court, et correspond effectivement au commentaire de l'IA.

Personnellement je préfère utiliser mkdir -p dans un cas comme celui-ci.

Dernière modification par soshy (Le 30/04/2025, à 14:27)

Hors ligne

#6 Le 30/04/2025, à 14:59

Watael

Re : Mkdir et variable sur nom de fichier ?

il vaut quand même mieux savoir faire un test.
et je préfère ne pas exécuter de commandes externes quand ce n'est pas nécessaire.


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#7 Le 01/05/2025, à 07:00

ptilou007

Re : Mkdir et variable sur nom de fichier ?

salut,

Watael a écrit :

il vaut quand même mieux savoir faire un test.
et je préfère ne pas exécuter de commandes externes quand ce n'est pas nécessaire.

le probleme peut venir du systeme d’exploitation, d’ou l’interets de la question !

philippe


Modération : merci de respecter la langue du forum qui est le français, pas le SMS.

Dernière modification par ptilou007 (Le 02/05/2025, à 08:23)

Hors ligne

#8 Le 02/05/2025, à 15:54

ptilou007

Re : Mkdir et variable sur nom de fichier ?

erreur systeme ! ou script ?slt,

j’ai une erreur de fichier pour chaque script.

j’en ai fait un troisieme …

Philippe

Hors ligne

#9 Le 02/05/2025, à 17:12

Watael

Re : Mkdir et variable sur nom de fichier ?

pour répondre, il nous faut le script, ET les messages d'erreurs.


Connected \o/
Welcome to sHell. · eval is evil.

En ligne

#10 Hier à 07:52

ptilou007

Re : Mkdir et variable sur nom de fichier ?

Bonjour,

Tous les scripts affiche une erreur, le tiens il dit qu'il ne trouvent pas les fichiers !
J'ai pris l'ecran en photo des que je remes la mains dessus je t'en poste une copie <;;;
J'ai compris il manque ffmeg dans /sbin ...

Philippe

Dernière modification par ptilou007 (Hier à 07:55)

Hors ligne