Problème script LINUX

Résolu
PourAider Messages postés 46 Statut Membre -  
PourAider Messages postés 46 Statut Membre -
Bonjour,

Je vous demande de l'aide concernant un problème tout bête (enfin pas si bête, car je n'arrive pas à le resoudre !!!)

Je cherche à enregistrer la première lettre d'un mot en script linux.

Je m'explique :

echo "Nom utilisateur :"
read nom

Je voudrais que l'on enregistre la premiere lettre de la variable nom (si Nom utilisateur = truc, la variable nom doit prendre la valeur de "t")

Si quelqu'un peut m'aider;

merci
A voir également:

3 réponses

Char Snipeur Messages postés 10112 Statut Contributeur 1 299
 
quel shell utilise tu ?
0
fiddy Messages postés 11653 Statut Contributeur 1 847
 
Salut

Avec la commande : expr "$nom" : "\(.\)" qui va te renvoyer la première lettre de la variable nom, tu devrais pouvoir t'en sortir ;)
0
PourAider Messages postés 46 Statut Membre 2
 
Voici ma syntaxe (qui doit surement pas être la bonne) :

echo "Entrer un nom d'utilisateur"
read nom
expr expr "$nom" : "\(.\)"


Voici maintenant le resultat :
Entrer un nom d'utilisateur
truc
0 (avec la commande expr, il m'affiche le nombre 0)
0
Sib
 
Bonjour,


Tout dépend si le script est écrit en bash ou non.
# En bash
nom=${nom:0:1}

# Sinon, en moins joli
nom=`echo $nom | sed -r 's/^(.).+/\1/'`

Il y a peut-être d'autres possibilités, mais je ne les ai pas en tête..


;)
0
PourAider Messages postés 46 Statut Membre 2
 
Oui c'est un bash, j'essai ta commande. Merci
0
PourAider Messages postés 46 Statut Membre 2
 
Merci Sib, sa fonctionne !!!
0