Se connecter avec
S'enregistrer | Connectez-vous

Problème pour la finalisation d'un Batch (det ype Adduser)

Dernière réponse : dans Programmation

Bonjour à tous !!! :pt1cable: 

Dans le cadre d'un petit projet, j'ai moi-même créé un fchier "script.bat" permettant de créer des groupes, des utilisateurs et les dossiers de ces groupes et de ces utilisateurs (ainsi qu'un dossier commun) sur un serveur Windows 2000. Mon batch fait ainsi appel à deux fichiers texte que sont "util.txt" avec les info concernant les utilisateurs et "grp.txt" pour les groupes.
Mes soucis sont les suivants : d'une part je souhaiterai que mon "script.bat" ne fassent appel qu'à un seul fichier texte et non deux. D'autre part les valeurs de certaines variables doivent être directement modifiées dans le "script.bat", ce qui ne paraît pas être la meilleur solution : je souhaiterai que ces valeurs puissent être inscrites dans le m^me fichier texte qui regrouperait les info pour les users et les groupes.
Pour être plus clair, voici les fichiers en question dans les posts suivants.. :) 
Merci d'avance pour l'aide apportée et dédicace à Gaby52 qui à l'air de s'y connaître n minimum en batch (puisque répondant à ces propres questions ;)  )
Lassé par la pub ? Créez un compte

Rectification : il sagit de Gaby59 :wahoo: 
Voici donc mes fichiers :

script.bat :
cls
@echo off

rem declaration des variables

rem entrer le nom du serveur de domaine
set serveur=nom_srv

rem entrer le nom du domaine existant
set domaine=nom_domaine

rem entrer la lettre du lecteur ou seront creer les dossiers de type c ou d etc
set lecteur=lettre_lecteur



rem boucle pour ajout des groupes et ajout des groupes
for /F "tokens=1" %%I in (grp.txt) do (
net localgroup /add %%I /domain /comment:"Groupe %%I"

rem creation des dossiers des groupes avec partage et droits
md %lecteur%:\%%I
net share %%I$=%lecteur%:\%%I /remark:"Repertoire du groupe %%I"
echo o|cacls %lecteur%:\%%I /t /g administrateur:F %%I:R


rem boucle pour ajout des utilisateurs
for /F "tokens=1,2,3,4* delims=," %%J in (util.txt) do (
if %%I==%%M (

rem creation des utilisateurs
net user %%J %%L /domain /add /comment:"Utilisateur %%J" /expires:never /fullname:"%%K" /passwordchg:no /scriptpath:%%J.bat

rem création des dossier utilisateurs avec droits
md %lecteur%:\%%I\%%J
echo o|cacls %lecteur%:\%%I\%%J /t /g administrateur:F %%J:C


rem ajout des utilisateurs dans les groupes
net localgroup %%I /add %%J

rem edition du script d ouverture de session
echo net use m: \\%serveur%\%%I$ > c:\winnt\sysvol\sysvol\%domaine%\scripts\%%J.bat
echo net use n: \\%serveur%\Commun$ >> c:\winnt\sysvol\sysvol\%domaine%\scripts\%%J.bat

)
rem fin if

)
rem fin boucle pour ajout des utilsateurs


)
rem fin boucle pour ajout des groupes

rem creation du dossier commun
md %lecteur%:\Commun
net share Commun$=%lecteur%:\Commun

rem ajouts des droits pour l administarteur et les groupes sur le dossier commun
echo o|cacls %lecteur%:\Commun /t /g administrateur:F
for /F "tokens=1" %%I in (grp.txt) do (
echo o|cacls %lecteur%:\Commun /e /g %%I:R

)
rem fin boucle pour ajout des droits sur dossier commun

pause

util.txt :

eaurelie,ESTOCQ aurelie,bulma,Administration
cDUPONT,DUPONT Christophe,neoxid,Informatique

grp.txt :

Administration
Informatique

ThX d'avance :bounce: 

J'ai comme l'impression que mon post n'intéresse pas grand monde... :( 
Je vais cependant vous faire part de mes avancées :
Je souhaiterais au final me retrouver avec un fichier texte unique du type :

global.txt:

[Var]

srv_admin,ADMIN_CFA,C

[Groupes]

Administration
Informatique

[Users]

eaurelie,ESTOCQ aurelie,bulma,Administration
cDUPONT,DUPONT Christophe,neoxid,Informatique

J'ai finalement trouvé la manière dont je pourrais incrémenter mes variables à partir d'un fichie texte :

cls
@echo off

for /F "tokens=1,2,3 delims=," %%I in (var.txt) do (
set nom_srv=%%I
set nom_dom=%%J
set lettre_lecteur=%%K
)

echo %nom_srv%
echo %nom_dom%
echo %lettre_lecteur%

pause

Et cela à partir d'un fichier texte comme celui-ci :

var.txt :

srv_admin,ADMIN_CFA,C

Ainsi mon seul et unique problème réside dans le fait que je ne sait toujours pas comment spécfier des conditions de début et de fin pour mes boucles "for", afin que celle-ci ne lisent et ne prennet en compte que les champs dont elles ont besoin.

Je reste donc à l'écoute de toute aide pouvant m'être donnée :hello: 
Lassé par la pub ? Créez un compte