Récupérer partie d'une chaîne de caractères
Résolu/Fermé
djmic
Messages postés
70
Date d'inscription
mardi 25 mars 2008
Statut
Membre
Dernière intervention
9 juillet 2010
-
4 janv. 2010 à 11:39
djmic Messages postés 70 Date d'inscription mardi 25 mars 2008 Statut Membre Dernière intervention 9 juillet 2010 - 4 janv. 2010 à 15:09
djmic Messages postés 70 Date d'inscription mardi 25 mars 2008 Statut Membre Dernière intervention 9 juillet 2010 - 4 janv. 2010 à 15:09
A voir également:
- Récupérer partie d'une chaîne de caractères
- Caractères ascii - Guide
- Recuperer message whatsapp supprimé - Guide
- Recuperer video youtube - Guide
- Chaine tnt gratuite sur mobile - Guide
- Impossible de récupérer mon compte gmail - Guide
4 réponses
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
4 janv. 2010 à 11:46
4 janv. 2010 à 11:46
Salut,
Ca dépend de beaucoup de choses... et les traitements peuvent être multiples...
Le caractère sera-t-il toujours à la même place ?
Est-ce une valeur numérique uniquement ?
Sinon le plus simple :
;-))
Ca dépend de beaucoup de choses... et les traitements peuvent être multiples...
Le caractère sera-t-il toujours à la même place ?
Est-ce une valeur numérique uniquement ?
Sinon le plus simple :
jp@MDK:~/tmpfs ssh$ A="test3.conf" jp@MDK:~/tmpfs ssh$ echo ${A} test3.conf jp@MDK:~/tmpfs ssh$ echo ${A:4:1} 3 jp@MDK:~/tmpfs ssh$
;-))
djmic
Messages postés
70
Date d'inscription
mardi 25 mars 2008
Statut
Membre
Dernière intervention
9 juillet 2010
1
4 janv. 2010 à 13:24
4 janv. 2010 à 13:24
c'est vrai que j'aurais duu m'exprimer un peu mieux.
Donc en fait j'ai un système de sauvegarde à faire via un script bash.
il permet de sauvegarder dans un répertoire (passé en paramètre $2) un fichier conf (passé en paramètre $1).
de sorte que chaque fichier, s'il existe déjà dans le répertoire de sauvegarde, soit renommé dans une suite logique.
ex:
on veut sauvegarde named.conf, il sera sauvegardé de la manière suivante:
named1.conf
named2.conf
etc...
au départ j'avais juste compté le nombre de fichiers sauvegardé lié au fichier passé en argument comme ceci:
le soucis est que si des fichiers de sauvegarde sont effacés les prochaines sauvegardes en effaceront d'autres il me faut donc récupérer la dernière correspondance et d'en récupérer le nombre.
j'ai le début de ma commande mais il me manque la fin
Merci pour ton aide
Donc en fait j'ai un système de sauvegarde à faire via un script bash.
il permet de sauvegarder dans un répertoire (passé en paramètre $2) un fichier conf (passé en paramètre $1).
de sorte que chaque fichier, s'il existe déjà dans le répertoire de sauvegarde, soit renommé dans une suite logique.
ex:
on veut sauvegarde named.conf, il sera sauvegardé de la manière suivante:
named1.conf
named2.conf
etc...
au départ j'avais juste compté le nombre de fichiers sauvegardé lié au fichier passé en argument comme ceci:
fich=$(basename $1) nom=${fich%.conf} i = `find $2 -maxdepth 1 -type f | grep -e "${nom}[0-9][0-9]*\.conf" | wc -l`
le soucis est que si des fichiers de sauvegarde sont effacés les prochaines sauvegardes en effaceront d'autres il me faut donc récupérer la dernière correspondance et d'en récupérer le nombre.
j'ai le début de ma commande mais il me manque la fin
i=`find $2 -maxdepth 1 -type f | grep -e "${nom}[0-9][0-9]*\.conf" | sort -n | tail -n 1 ....`
Merci pour ton aide
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
4 janv. 2010 à 13:53
4 janv. 2010 à 13:53
| egrep -o '[[:digit:]]{1,}'
djmic
Messages postés
70
Date d'inscription
mardi 25 mars 2008
Statut
Membre
Dernière intervention
9 juillet 2010
1
4 janv. 2010 à 14:20
4 janv. 2010 à 14:20
Merci Jipicy ca fonctionne. mais un autre problème s'impose.
Ceci est du au tri
lors du tri named10.conf est situé entre named1.conf et named2.conf ce qui fait que je récupère toujours named9.conf et qu'il s'écrase toujours lui même.
comment faire pour que le tri, avant de récupérer le dernier, ne se fasse ainsi named1.conf, named2.conf, named9.conf,named10.conf, ... au lieu de named1.conf,named10.conf, named2.conf ....
Merci pour ton aide
Ceci est du au tri
lors du tri named10.conf est situé entre named1.conf et named2.conf ce qui fait que je récupère toujours named9.conf et qu'il s'écrase toujours lui même.
comment faire pour que le tri, avant de récupérer le dernier, ne se fasse ainsi named1.conf, named2.conf, named9.conf,named10.conf, ... au lieu de named1.conf,named10.conf, named2.conf ....
Merci pour ton aide
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
4 janv. 2010 à 14:39
4 janv. 2010 à 14:39
Essaye avec "ls" :
ls -1v ${2}/*.conf | tail -1 | egrep -o '[[:digit:]]{1,}'
djmic
Messages postés
70
Date d'inscription
mardi 25 mars 2008
Statut
Membre
Dernière intervention
9 juillet 2010
1
4 janv. 2010 à 15:09
4 janv. 2010 à 15:09
merci jipicy c'est impéccable.
Merci
Merci