Bonjour à tous et bravo pour ce site et ce forum !!!

Je vous expose rapidement mon problème:
Actuellement en stage, j'ai mis en place un serveur Samba (échange de fichier sous Linux), je dois gérer au total 360 élèves reparti par classe de 18. J'ai donc créer un script permettant de changer les mots de passe de toute une classe (chaque classe à son mot de passe qui est commun à tout les élèves).

Mon problème est le suivant, comment puis je envoyer le contenu d'une variable dans la commande smbpasswd sans avoir besoin de valider systématiquement avec la touche entrée ?

Je vous laisse au cas ou mon script dans l'état actuel
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/bash
 
echo "Bonjour !!!"
echo "Veuillez saisir le niveau de la classe dont vous voulez changer le mot de passe (3,4,5,6,idd5,idd4)"
read classe
echo "Veuillez saisir la lettre de la classe (A, B, C, D)"
read lettre
 
for lettr in R N
	do
		for num in `seq 1 9`
				do smbpasswd "$classe""$lettre""$lettr""$num"
				echo "$classe""$lettre""$lettr""$num"
		                done
	done
Et au cas ou l'aide de la commande smbpasswd:
When run by root:
smbpasswd [options] [username]
otherwise:
smbpasswd [options]

options:
-L local mode (must be first option)
-h print this usage message
-s use stdin for password prompt
-c smb.conf file Use the given path to the smb.conf file
-D LEVEL debug level
-r MACHINE remote machine
-U USER remote username
extra options when run by root or in local mode:
-a add user
-d disable user
-e enable user
-i interdomain trust account
-m machine trust account
-n set no password
-W use stdin ldap admin password
-w PASSWORD ldap admin password
-x delete user
-R ORDER name resolve order
Je reste à votre disposition pour tout éclaircissement éventuel, en vous remerciant d'avance, je vous souhaite une bonne journée

Cordialement
Neo.08