|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : août 2007 Messages : 5 ![]() |
Bonjour,
Comment faut-il procéder pour incrémenter un caractère ? J'entends par là que quand je veux incrémenter A c'est pour avoir B... et ceci en ksh Merci. |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Inscription : mars 2002 Messages : 946 ![]() |
Un caractère quelconque ? Ou juste une lettre ?
Dans le cas général, et sur 8 bits : |
|
|
00
|
|
|
#3 |
|
Membre éprouvé
![]() Inscription : mai 2002 Messages : 535 ![]() |
Et Quand vous avez "Z" vous voulez obtenir "A" ?
__________________
Signé : Capitaine Jean-Luc Picard |
|
|
00
|
|
|
#4 | |
|
Membre éprouvé
![]() Inscription : mai 2002 Messages : 535 ![]() |
Citation:
Merci à vous
__________________
Signé : Capitaine Jean-Luc Picard |
|
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Inscription : mars 2002 Messages : 946 ![]() |
Il a dit incrémenter un caractère, pas incrémenter une lettre. rcyril, il faut préciser l'énoncé si ma solution ne convient pas (j'ai suivi le comportement du C, en fait).
S'il y a que des majuscules sans accent : |
|
|
00
|
|
|
#6 | ||
|
Membre Expert
![]() Inscription : mars 2002 Messages : 946 ![]() |
Tu connais le fonctionnement de tr ?
On donne deux listes de caractères, et tr remplace chaque caractère de la 1ère liste par celui de la 2e liste (à la même position). Code :
|
||
|
|
00
|
|
|
#7 |
|
Membre éprouvé
![]() Inscription : mai 2002 Messages : 535 ![]() |
Je m'interesse à ce Post car j'ai un problème assez similaire
resultat = "B" OK resultat = "¤" KO Que donne la commande suivante chez vous ? Merci de votre aide Cordialment @rgoët
__________________
Signé : Capitaine Jean-Luc Picard |
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Inscription : mars 2002 Messages : 946 ![]() |
Chez moi, tout fonctionne parfaitement.
Le dernier exemple m'affiche bien B, suivi d'une tabulation verticale (\v, le caractère après le \n inséré par echo). J'avoue ne pas trop comprendre d'où peut venir le problème. Peut-être une version de tr exotique ? Mon tr : Au pire, s'il faut se limiter à l'alphabet, il reste la possibilité de faire l'expansion à la main (et lister toutes les lettres). |
|
|
00
|
|
|
#9 | |
|
Membre éprouvé
![]() Inscription : mai 2002 Messages : 535 ![]() |
Citation:
Code :
tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'BCDEFGHIJKLMNOPQRSTUVWXYZA' Merci à vous LLB
__________________
Signé : Capitaine Jean-Luc Picard |
|
|
|
00
|
|
|
#10 |
|
Invité de passage
![]() Inscription : août 2007 Messages : 5 ![]() |
llb t'as solution me convient presque sauf j'ai des carateres espaces apres le changement de la lettre. tu sais d'ou ca peut venir ?
essayez ca: test=`echo "A" | tr '\0-\377' '\1-\377\0' ` echo $test test n'est pas = à B mais à B avec des espaces pourquoi ? |
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() Inscription : mars 2002 Messages : 946 ![]() |
Oui, comme je l'ai dit dans une réponse. Par défaut, echo affiche un retour à la ligne. Ce retour à la ligne est "incrémenté" lui aussi. Utilise echo -n pour ne pas l'avoir.
|
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() Inscription : août 2007 Messages : 5 ![]() |
meric pour l'aide je considere comme résolu
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com