Vous pouvez également utiliser un fichier batch pour gérer cela et l'exécuter en tant que script, si vous ne souhaitez pas utiliser l'interface graphique. Ou vous pouvez simplement le taper dans une ligne de commande.
Si vous souhaitez modifier tous les utilisateurs de votre domaine, je procéderais de la manière suivante.
dsquery users | dsmod user -hmdir \\server\users\$username$\
dsmod reconnaît que l'indicateur $username$ signifie le samid de l'utilisateur qui lui est transmis par la commande dsquery. Il reconnaît également ce drapeau pour la commande -profile attachée à la commande dsmod.
Note : Si votre dossier partagé est un partage caché, cela ne fonctionnera pas, le point d'interrogation dans le partage caché trompe la commande en lui faisant croire que vous démarrez le drapeau plus tôt qu'il ne l'est en réalité. J'ai expérimenté des caractères d'échappement pour cela, mais je n'en ai pas trouvé jusqu'à présent qui résolve ce problème.
Si tous vos utilisateurs appartiennent à une OU spécifique, vous devez modifier la commande dsquery. Pour cette commande, vous devez ajouter le nom de domaine complet de l'OU qui contient tous les utilisateurs que vous souhaitez modifier. Ce nom peut être trouvé, de manière assez amusante, par le biais de la commande dsquery OU.
La commande se présente alors comme suit,
dsquery users [fully qualified domain name of the OU ] | dsmod user -hmdir \\server\users\$username$\
Si vous voulez le faire par lots et utiliser un partage caché, vous pouvez utiliser un boucle for pour le faire, mais la syntaxe devient un peu alambiquée à cause des boucles nécessaires pour extraire d'abord tous les utilisateurs, puis extraire seulement leurs noms, et ensuite revenir en arrière et insérer ces informations dans des zones spécifiques d'une commande dsmod. C'est moche, mais je ferais quelque chose comme ça.
dsquery user [fully qualified domain name of the ou] > c:\users.txt & for /f "delims==, tokens=2" %A in (c:\users.txt) do (dsmod user "CN=%A[rest of FQDN here] -hmdir "\\server\users$\%A\" && del c:\users.txt -q
Note : Si vous utilisez cette méthode dans un fichier batch, le symbole boucle for doit être précédé de doubles pourcentages, c'est-à-dire %%A au lieu de %A.
Il interroge tous les utilisateurs de l'OU spécifié et les envoie dans un fichier. Il exécute ensuite un boucle for, en extrayant le nom de l'utilisateur du FQDN dans le fichier et en l'insérant dans une commande dsmod qui modifie son répertoire personnel. Enfin, il se nettoie lui-même en supprimant le fichier qu'il a créé si le boucle for s'est déroulé avec succès.
J'espère que cela vous aidera, même si vous n'utilisez pas de fichier batch pour effectuer ce travail particulier, cela peut vous aider à l'avenir. L'avantage de ce type de fichier est qu'il peut être sauvegardé et que si vous avez besoin de modifier quelque chose à l'avenir, il vous suffira de le réexécuter pour effectuer les changements souhaités. En outre, si vous constatez que quelqu'un a apporté des modifications non autorisées, vous pouvez revenir en arrière d'un simple double clic.