Bonjour à tous,
Dans une boucle de stacking de plusieurs images, J'aimerai récupérer la première partie du nom -identique- de 2 fichiers, puis l'incrément qui suit
fichiers
dossier/toto1.png
dossier/toto2.png
j'aimerai
récupérer "toto" puis [12] à la suite…
j'ai fait
for i in dossier/*
do echo $basename $i .${##*.})
done
cela affiche bien les fichiers en entier
toto1
toto2
…mais je voudrai séparer la partie invariable "toto" et les deux incréments dans [12] dans uen chaine "toto[12]"
merci beaucoup!
cat
# plusieurs moyens
Posté par NeoX . Évalué à 2.
1°) supprimer les chiffres
si tes noms de fichiers sont toujours de la forme abcdef12345.ext
un simple recherche/remplace dans le nom obtenu precedemment, en supprimant les chiffres te donnera ta racine 'toto'
2°) si tu fais cela pour chaque fichier, tu as donc une "racine" = toto
et un compteur 1 sur le premier fichier
au deuxieme tour, la racine est la meme, donc tu n'en changes pas, et le compteur devient 12 (concatenation du compteur precedent et du nouveau compteur)
# un petit script
Posté par MicP . Évalué à 1. Dernière modification le 11 février 2019 à 16:59.
# ou alors…
Posté par MicP . Évalué à 1.
[^] # message à supprimer
Posté par MicP . Évalué à 1. Dernière modification le 12 février 2019 à 07:24.
désolé
[^] # Re: celui-ci devrait mieux fonctionner
Posté par MicP . Évalué à 1. Dernière modification le 12 février 2019 à 07:37.
Le contenu de
monScript.sh
:La liste des noms des fichiers pour le test :
Le retour du script en fonction de la liste ci-dessus :
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.