#1 Le 26/02/2012, à 23:19
- Xbabilone
créer des noms du type 00000xxx.jpg
Bonjour a tous!
je cherche un bout de script pour générer des noms du type 00000xxx.jpg.
Avec a la place des xxx des nombre qui se suivent.
C'est tout bete mais je seche!
merci d'avance
Hors ligne
#2 Le 26/02/2012, à 23:23
- sputnick
Re : créer des noms du type 00000xxx.jpg
Salut,
tu peux generer des fichiers de cette façon :
touch 00000{001..199}.jpg
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#3 Le 26/02/2012, à 23:42
- Xbabilone
Re : créer des noms du type 00000xxx.jpg
Merci c'est gentil
Je ne cherche pas a generer de fichier directement .
Mais generer des noms de fichier pour les envoyer a une command
Hors ligne
#4 Le 26/02/2012, à 23:47
- pfriedz
Re : créer des noms du type 00000xxx.jpg
Si c'est pour renommer des fichiers déjà existants : http://doc.ubuntu-fr.org/pyrenamer
Hors ligne
#5 Le 26/02/2012, à 23:52
- Xbabilone
Re : créer des noms du type 00000xxx.jpg
C'est sympa mais non
Je cherche a generer des chaines de caracteres pour les envoyer ensuite en argument a une commande.
Hors ligne
#6 Le 26/02/2012, à 23:53
- sputnick
Re : créer des noms du type 00000xxx.jpg
Merci c'est gentil
Je ne cherche pas a generer de fichier directement .
Mais generer des noms de fichier pour les envoyer a une command
Ta demande n'est pas claire. Sois plus précis sur ce que tu utilise, ce que tu désire, avec quoi tu travaille...
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#7 Le 26/02/2012, à 23:55
- sputnick
Re : créer des noms du type 00000xxx.jpg
Si c'est pour "attaquer" des "ranges" de numeros de fichiers existants :
command 00000{001..199}.jpg
ou bien si la command ne gere qu'un seul fichier :
#!/bin/bash
for arg; do
command "$arg"
done
./script.sh 00000{001..199}.jpg
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#8 Le 27/02/2012, à 00:13
- Bousky
Re : créer des noms du type 00000xxx.jpg
#!/bin/bash for arg; do command "$arg" done
./script.sh 00000{001..199}.jpg
Ou plus simplement :
for fichier in 00000{001..199}.jpg ; do
command $fichier
done
Linux qui plante complètement ? Plus rien ne répond ? On peut toujours le redémarrer proprement :
Alt + SysRq + REISUB (Retourne En Islande Sur Un Bateau !)
Hors ligne
#9 Le 29/02/2012, à 21:12
- Xbabilone
Re : créer des noms du type 00000xxx.jpg
Voici ce que je voulai faire:
##########################################################################
#!/bin/sh
function padding()
{
number="000000"$1
sortie= tail -c 7 <<<$number
echo $($sortie)
}
i=0
max=100
while [ $i -le $max ]; do
mavar=$(padding $i)
echo "fichier_"$mavar
i=$(($i+1))
done
exit 0
##############################################################################
Hors ligne
#10 Le 29/02/2012, à 21:39
- pingouinux
Re : créer des noms du type 00000xxx.jpg
Salut,
Si tu tiens à utiliser une boucle while :
#!/bin/bash
i=0
max=5
while [ $i -le $max ]; do
printf "fichier_%06d\n" $i
((i++))
done
exit 0
Ajouté : Un peu plus court, mais moins lisible
#!/bin/bash
i=0
max=5
while [ $i -le $max ]; do
printf "fichier_%06d\n" $((i++))
done
exit 0
Dernière modification par pingouinux (Le 01/03/2012, à 08:04)
Hors ligne
#11 Le 29/02/2012, à 22:55
- sputnick
Re : créer des noms du type 00000xxx.jpg
Huummmmmmh. Pourquoi faire simple quand on peux faire compliqué, tel est votre devise ?
Depuis le début du post on a les expansions de range :
printf '%s\n' fichier_{000001..000100}
fichier_000001
(...)
fichier_000099
fichier_000100
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#12 Le 06/03/2012, à 10:20
- Jacs
Re : créer des noms du type 00000xxx.jpg
Personnellement, pour renommer mes photos en série, j'utilise GPrename
http://doc.ubuntu-fr.org/gprename
Ubuntu 16.04 LTS
Hors ligne