Manipulation d'une chaine de caractere shell
Résolu
Speke
-
jipicy Messages postés 40842 Date d'inscription Statut Modérateur Dernière intervention -
jipicy Messages postés 40842 Date d'inscription Statut Modérateur Dernière intervention -
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)
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:
- Manipulation d'une chaine de caractere shell
- Caractère ascii - Guide
- Classic shell - Télécharger - Personnalisation
- Caractère spéciaux - Guide
- Caractere speciaux - Guide
- Chaine tnt gratuite sur mobile - Guide
3 réponses
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)...
;-))