Problème script pour définir une plage d'horaire dans un serveur de domaine
Résolu
HrachJR
-
HrachJR -
HrachJR -
Bonjour,
J'ai suivi un tuto pour créer un script qui va me permettre de configurer la plage horaire sur les utilisateurs d'une UO dans mon AD. Le principe est d'exporter la liste des users dans un fichier csv et ensuite avec un script bash appliquer la plage horaires sur les utilisateurs.
Problème le script bash n'arrive pas à lire les noms d'utilisateurs du fichier bash car ils sont séparer par un espace. La solution serait de considérer l'espace comme vide mais je ne sais pas comment faire.
Quelqu'un à eu le même problème que moi sur ce site (voir les commentaires), la personne à proposer une solution mais c'est pas très clair. (le lien du site : https://www.it-connect.fr/script-parametrer-les-horaires-dacces-sur-plusieurs-utilisateurs/comment-page-1/?unapproved=198465&moderation-hash=65d34e580ec70ca05e8a3f94f4ba8966#comment-198465
Merci d'avance
J'ai suivi un tuto pour créer un script qui va me permettre de configurer la plage horaire sur les utilisateurs d'une UO dans mon AD. Le principe est d'exporter la liste des users dans un fichier csv et ensuite avec un script bash appliquer la plage horaires sur les utilisateurs.
Problème le script bash n'arrive pas à lire les noms d'utilisateurs du fichier bash car ils sont séparer par un espace. La solution serait de considérer l'espace comme vide mais je ne sais pas comment faire.
Quelqu'un à eu le même problème que moi sur ce site (voir les commentaires), la personne à proposer une solution mais c'est pas très clair. (le lien du site : https://www.it-connect.fr/script-parametrer-les-horaires-dacces-sur-plusieurs-utilisateurs/comment-page-1/?unapproved=198465&moderation-hash=65d34e580ec70ca05e8a3f94f4ba8966#comment-198465
Merci d'avance
A voir également:
- Net helpmsg 2221
- Script vidéo youtube - Guide
- Changer serveur dns - Guide
- Définir google comme page d'accueil - Guide
- Serveur de reception mail - Guide
- Verification de l'identité du serveur impossible - Forum iPhone
3 réponses
Bonjour,
Il suffit de rajouter des doubles quotes autour de la variable %%i, comme dans les commentaires :
ps : ne pas oublier d'exécuter le script en tant qu'administrateur
Il suffit de rajouter des doubles quotes autour de la variable %%i, comme dans les commentaires :
FOR /F "skip=1 tokens=1 delims=," %%i IN (utilisateurs.csv) DO (net user "%%~i" /times:L-V,6:00AM-10:00PM;)
ps : ne pas oublier d'exécuter le script en tant qu'administrateur
La commande NET USER gère les utilisateurs locaux, pour gérer les utilisateurs du domaine il faut rajouter le switch /DOMAIN
FOR /F "skip=1 tokens=1 delims=," %%i IN (utilisateurs.csv) DO (net user "%%~i" /times:Me-V,6:00AM-10:00PM; /domain)
pause
J'a réessayé mais toujours le même problème il me dit que l'utilisateur est introuvable :
C:\horaires>(net user "User4 Tesst" /times:Me-V,6:00AM-10:00PM; /domain )
Le nom d’utilisateur est introuvable.
Vous obtiendrez une aide supplémentaire en entrant NET HELPMSG 2221.
C:\horaires>(net user "User3 Tesst" /times:Me-V,6:00AM-10:00PM; /domain )
Le nom d’utilisateur est introuvable.
La syntaxe marche pas j'ai essayé comme ça mais toujours pas :
C:\Users\Administrateur.DOMORCA>net user "User4 Tesst" /TIMES:Me-V,6:00AM-10:00PM; /DOMAIN
Le nom d’utilisateur est introuvable.
Vous obtiendrez une aide supplémentaire en entrant NET HELPMSG 2221.
C:\Users\Administrateur.DOMORCA>net user User4 Tesst /TIMES:Me-V,6:00AM-10:00PM; /DOMAIN
Le nom d’utilisateur est introuvable.
Vous obtiendrez une aide supplémentaire en entrant NET HELPMSG 2221.
J'ai enfin trouvé l'erreur. Quand j'extrait le fichier csv depuis Gestionnaire de Tache> Utilisateurs et Ordinateurs Active Directory en faisant un clic droit exporter la liste, le nom d'utilisateur est écrit "nom prénom" alors que pour que ça marche il faut que ça soit "nom.prénom". Donc depuis le bloc note il suffit d'aller dans Edition>Remplacer et remplacer l'espace par un point. Ensuite on exécute le fichier .bat suivant :
Il faut que les 2 fichier soit dans le même répertoire pour que ça marche.
Voila voila
FOR /F "skip=1 tokens=1 delims=," %%i IN (utilisateurs.csv) DO (net user %%i /times:L-V,6:00AM-10:00PM;)
pause
Il faut que les 2 fichier soit dans le même répertoire pour que ça marche.
Voila voila
J'ai tapé ça :
FOR /F "skip=1 tokens=1 delims=," %%i IN (utilisateurs.csv) DO (net user "%%~i" /times:Me-V,6:00AM-10:00PM;)
Pause
Dans ce cas il faudrait que je jette un oeil à ton fichier .csv
Nom,Type,Description,
User4 Tesst,Utilisateur,,
User3 Tesst,Utilisateur,,
User2 Tesst,Utilisateur,,
User1 Tesst,Utilisateur,,
Mais pour que la commande que je veux fonctionne il faut pas d'espace je crois.