Salut,
Trouvé sur https://fr.linux-console.net/?p=16532 avec un « sed ». Plutôt en
m’inspirant de la page.
base_name="$(echo "${msg}" | sed -e 's/\(.*\)_//')"
Le modus operandi des expressions régulières est bien obscur…
> Le 1 sept. 2025 à 10:28, philippe L <[email protected]> a écrit :
>
> Bonjour,
>
> J'ai des noms de fichiers composé de plusieurs _ , je veux que le script
> prennet en compte le dernier des _ et non le premier, que dois je modifier ?
>
> #!/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
>
> merci
>
> --
> Ptilou
--
M Pierre Malard
«Mittler zwischen hirn und händen muss das hirz sein !»
«La médiation entre le cerveau et les mains doit être le cœur !»
Fritz Lang - "Métropolis" -
1929
|\ _,,,---,,_
/,`.-'`' -. ;-;;,_
|,4- ) )-,_. ,\ ( `'-'
'---''(_/--' `-'\_) πr
perl -e '$_=q#: 3|\ 5_,3-3,2_: 3/,`.'"'"'`'"'"' 5-. ;-;;,_: |,A- ) )-,_. ,\
( `'"'"'-'"'"': '"'"'-3'"'"'2(_/--'"'"' `-'"'"'\_):
24πr::#;y#:#\n#;s#(\D)(\d+)#$1x$2#ge;print'