Forum des développeurs  

Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé.
Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Autres systèmes > Unix

Unix Forum d'entraide sur les systèmes Unix et dérivés (*BSD, AIX, etc.). Avant de poster ->F.A.Q BSD F.A.Q. Aix

Réponse
 
Outils de la discussion
Vieux 05/06/2008, 12h51   #1 (permalink)
Futur Membre du Club
 
Date d'inscription: octobre 2007
Messages: 39
Par défaut Fonction shell pour du padding ?

Bonjour,

Je voudrais avoir un renseignement pour savoir s'il était possible via une fonction de faire un padding sur une variable pour qu'il me donne à partir d'une valeur me pad le champ avec une longueur donné et des zero a gauche.

Exemple :

Je rentre en paramètre de ma fonction la valeur :
FA
En sortie de ma fonction, je veux une longueur de 4 pour mon champ avec des zero a gauche :
00FA

Voila, pour l'instant j'ai ce code, mais je voudrais trouvé plus performant :
Code :
SIZE=`expr length ${maVariable}`
until [ "$SIZE" -eq "4" ]
do
	maVariable="0${maVariable}"
	SIZE=`expr length ${maVariable}`
done
merci a vous...
gud

Dernière modification par julp ; 05/06/2008 à 18h00 Motif: correction balises [code]
gdev7 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 05/06/2008, 16h00   #2 (permalink)
Membre éprouvé
 
Avatar de jlliagre
 
Date d'inscription: juin 2007
Localisation: Paris
Messages: 404
Par défaut

Code :
maVariable=$(printf "%04d" $maVariable)
jlliagre est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 05/06/2008, 17h49   #3 (permalink)
Futur Membre du Club
 
Date d'inscription: octobre 2007
Messages: 39
Par défaut

Salut,
Je te remercie pour ta réponse , j'aurais pas pensé que l'on puisse faire des printf sous Unix (mis a part dans la commande awk).

@ la prochaine

gud,
gdev7 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 05/06/2008, 20h56   #4 (permalink)
Membre éprouvé
 
Avatar de jlliagre
 
Date d'inscription: juin 2007
Localisation: Paris
Messages: 404
Par défaut

Je viens juste de remarquer que ta variable n'est pas en décimal mais en hexa.

Ma réponse est dans ce cas:

Code :
maVariable=$(printf "%04x" 0x$maVariable)
jlliagre est déconnecté   Envoyer un message privé Réponse avec citation
Réponse

Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Autres systèmes > Unix



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non
Navigation rapide


Fuseau horaire GMT +1. Il est actuellement 12h47.


Publiez vos articles, tutoriels et cours et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones. Nous contacter
Copyright 2000-2008 www.developpez.com - Legal informations