#26 Le 10/07/2014, à 07:27
- Watael
Re : [Résolu] Script (mais pas que) pour couper le nom d'un fichier
tous mes fichiers sont appelés A-B-C-D-xxxxxxxxxxx.ecw
évidemment, si tu changes le format des noms de fichiers...
for f in *.$ext; do IFS='-' read a b c d _ <<<"$f"; echo "$a-$b-$c-$d.$ext"; done
ou
for f in *.$ext; do IFS='-' read -a b <<<"$f"; (IFS='-'; echo "${b[*]::4}.$ext"); done
Dernière modification par Watael (Le 10/07/2014, à 07:31)
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#27 Le 11/07/2014, à 12:34
- ar barzh paour
Re : [Résolu] Script (mais pas que) pour couper le nom d'un fichier
évidemment, si tu changes le format des noms de fichiers...
je ne comprends pas pourtant
mes fichiers sont bien formatés
<champ1>-<champ2>-champ3>-<champ4> -<champ5>.ecw
le champ5 pouvant être quelconque (enfin c'est ce que j'avais compris)
comme
66-2012-0594-6158-LA93-0M50-RVB-E100.ecw
à moins que tu ne sois parti de la droite ? , je ne suis pas trop à l'aise avec les modèles ...
Dernière modification par ar barzh paour (Le 11/07/2014, à 12:40)
PC : B760M DS3H DDR4, 12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750 @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )
Hors ligne
#28 Le 11/07/2014, à 13:04
- Watael
Re : [Résolu] Script (mais pas que) pour couper le nom d'un fichier
on considère un champ par rapport à un séparateur, là : 66-2012-0594-6158-LA93-0M50-RVB-E100.ecw
en prenant - comme séparateur, je compte 8 champs.
et effectivement, ${paramètre%%mot} effectue un Retrait du motif correspondant au suffixe.
Dernière modification par Watael (Le 11/07/2014, à 13:05)
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#29 Le 11/07/2014, à 14:17
- ar barzh paour
Re : [Résolu] Script (mais pas que) pour couper le nom d'un fichier
@watael
je crois avoir compris ton bash
ext=ecw
for f in *.$ext; do mv -i "$f" "${f%-*-*-*-*}.$ext"; done
tout fichier
<champ1>-D-E-F-G.ecw
devient
champ1.ecw
quelquesoit le contenu de champ1
PC : B760M DS3H DDR4, 12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750 @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )
Hors ligne
#30 Le 11/07/2014, à 16:06
- Silvio66
Re : [Résolu] Script (mais pas que) pour couper le nom d'un fichier
@Silvio66 :
Je vois Xubuntu dans ta signature, donc tu as XFCE ? Donc tu as Thunar comme gestionnaire de fichiers ? Donc tu as le renommage de masse avec la fonction F2 (ou clic-droit/Renommer… après avoir sélectionné plusieurs fichiers) ? Utilise alors l'option Chercher/Remplacer ou Supprimer des caractères (à partir de la droite), ça marchera tout seul… mais fais quand même un test sur qques fichiers avant de lancer le bazar pour 1 000 fichiers !Bref, pas vraiment besoin de script dans ce cas-ci…
En effet, j'ai fait la manip de UbuntOlivier et ça a marché sans besoin de script...
Merci pour tout à tous.
Silvio
Xubuntu 14.04 LTS
Hors ligne