Manipulation d'une chaine de caractere shell

Résolu/Fermé
Speke - 23 juin 2009 à 20:49
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 24 juin 2009 à 13:09
Bonjour,

Je cherche en fait à manipuler une chaine de caractere variable.
Je m'explique , je definie des variable du type
AA=`date +%y`
MM=`date +%m`
JJ=`date +%j`

ensuite j'affiche un message du style
echo veuillez rentrer la chaine de caractere
read chaine

l'utilisateur va rentrer par exemple MMJJAA dans n'importe quel ordre en fait et j'aurais besoin de les convertir dans le même ordre par les variables que j'ai defini au dessus
j'ai pensé à utlisér la commande test mais ca me ferais tester tout les cas possible or comme il y a plus de possibilité que ce que j'ai cité ca me semble trop lourd a gerer
si vous avez une iddée je suis preneur :o)
A voir également:

3 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 895
23 juin 2009 à 23:05
Salut,
#! /bin/sh

#set -xv

AA=$(date +%y)
MM=$(date +%m)
JJ=$(date +%d)

echo "Veuillez rentrer la chaine de caractere : "
read chaine
eval echo $(echo $chaine | sed "s/../\${&}/g")
Reste à rajouter un test sur la chaine entrée pour vérifier que les caractères soient les bons et le nombre aussi (2 de chaque)...

;-))
0
Ca fonctionne.
Merci beaucoup
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
24 juin 2009 à 13:09
De rien ;-))
0