Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Inventorier ttes les taches planifiées des srv 2k/2K3/2K8 de AD

9 réponses
Avatar
Lyes
Bonjour,

J'ai besoin de réaliser l'inventaire exhaustif des taches planifiées de
l'ensemble des 200 serveurs du domaine Active Directory 2003 de l'entreprise.

J'aimerai savoir si il existe un script vbs ( ou autre) permettant de
réaliser cette opération sans se connecter interactivement (via TSE/RDP) sur
chaques serveurs?

De plus je m'apperçois que j'ai de plus en plus besoin d'apprendre à
scripter en VBS
et dès que je récupère un script j'ai bcp de mal à le modifier pour
l'adapter à une situation type.
Quelqu'un connait il un très très bon livre ou tutoriel pour devenir un pro
du vbs quand on comprend rien à la programmation?

Lyes

9 réponses

Avatar
Philemil
Lyes a écrit :
Bonjour,



Bonjour


J'ai besoin de réaliser l'inventaire exhaustif des taches planifiées de
l'ensemble des 200 serveurs du domaine Active Directory 2003 de l'entreprise.

J'aimerai savoir si il existe un script vbs ( ou autre) permettant de
réaliser cette opération sans se connecter interactivement (via TSE/RDP) sur
chaques serveurs?




une idée peut-être ?
rapidement avec un petit batch , avec "schtasks.exe"

dans le même répertoire:
- en entrée fichier "liste.txt" comportant la liste des serveurs
- sortie dans un fichier taches.txt,



--- Couper ici -- inventaire.cmd -----
@echo off
echo Interrogation des tâches planifiées des ordinateurs de la liste
cd /d %~dp0
echo Inventaire le %date% %time% > taches.txt
echo =================================================== >> taches.txt
FOR /F %%i IN (liste.txt) do (
echo %%i
echo %%i >> taches.txt
schtasks /Query -s %%i >> taches.txt
echo. >> taches.txt
echo --------------------------------------------------- >> taches.txt
echo. >> taches.txt
)
--- Couper ici -- inventaire.cmd -----


De plus je m'apperçois que j'ai de plus en plus besoin d'apprendre à
scripter en VBS
et dès que je récupère un script j'ai bcp de mal à le modifier pour
l'adapter à une situation type.
Quelqu'un connait il un très très bon livre ou tutoriel pour devenir un pro
du vbs quand on comprend rien à la programmation?

Lyes


bon courage pour la suite
Philippe
Avatar
jbongran
"Lyes" a écrit dans le message de
news:
Bonjour,

J'ai besoin de réaliser l'inventaire exhaustif des taches planifiées de
l'ensemble des 200 serveurs du domaine Active Directory 2003 de
l'entreprise.

J'aimerai savoir si il existe un script vbs ( ou autre) permettant de
réaliser cette opération sans se connecter interactivement (via TSE/RDP)
sur
chaques serveurs?

De plus je m'apperçois que j'ai de plus en plus besoin d'apprendre à
scripter en VBS
et dès que je récupère un script j'ai bcp de mal à le modifier pour
l'adapter à une situation type.
Quelqu'un connait il un très très bon livre ou tutoriel pour devenir un
pro
du vbs quand on comprend rien à la programmation?

Lyes




Le script recherché t'attend ici:
http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true
Le script center est une ressource incontournable si l'anglais n'est pas un
frein pour toi
http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx
Avatar
Lyes
Bonjour Philemil,

Je te remercie beaucoup pour ta réponse et pour ton script.
Je m'en vais de ce pas faire un export (csvde) pour sortir la liste des
serveurs.
Ensuite je lance ton script.
Je te tiendrai informé du résultat dans le courant de la journée.

Lyes


"Philemil" wrote:

Lyes a écrit :
> Bonjour,

Bonjour

>
> J'ai besoin de réaliser l'inventaire exhaustif des taches planifiées de
> l'ensemble des 200 serveurs du domaine Active Directory 2003 de l'entreprise.
>
> J'aimerai savoir si il existe un script vbs ( ou autre) permettant de
> réaliser cette opération sans se connecter interactivement (via TSE/RDP) sur
> chaques serveurs?
>

une idée peut-être ?
rapidement avec un petit batch , avec "schtasks.exe"

dans le même répertoire:
- en entrée fichier "liste.txt" comportant la liste des serveurs
- sortie dans un fichier taches.txt,



--- Couper ici -- inventaire.cmd -----
@echo off
echo Interrogation des tâches planifiées des ordinateurs de la liste
cd /d %~dp0
echo Inventaire le %date% %time% > taches.txt
echo =================================================== >> taches.txt
FOR /F %%i IN (liste.txt) do (
echo %%i
echo %%i >> taches.txt
schtasks /Query -s %%i >> taches.txt
echo. >> taches.txt
echo --------------------------------------------------- >> taches.txt
echo. >> taches.txt
)
--- Couper ici -- inventaire.cmd -----


> De plus je m'apperçois que j'ai de plus en plus besoin d'apprendre à
> scripter en VBS
> et dès que je récupère un script j'ai bcp de mal à le modifier pour
> l'adapter à une situation type.
> Quelqu'un connait il un très très bon livre ou tutoriel pour devenir un pro
> du vbs quand on comprend rien à la programmation?
>
> Lyes
bon courage pour la suite
Philippe



Avatar
Lyes
Bonjour,

Merci pour votre réponse.
J'avais en effet déjà consulté le script center technet et trouvé le
script ci dessous simplement j'ignore comment l'adapter pour qu'il cherche
dans AD tous les ordinateurs avec des systèmes d'exploitations windows
2000svr/advsvr/2003/2008 et qu'il remplace à la volé le contenu de
strComputer par le nom d'un serveur.
J'effectue un actuellement un stage de 6 mois sur le thème restructuration
de AD et je m'apperçois que j'ai énormément besoin de solutions scriptées
mais je ne sais pas scripter.
C'est pourquoi je pose beaucoup de question sur ce forum.
mais je consulte aussi tous les jours le script center technet.

Lyes.

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!" & strComputer & "rootcimv2")

Set colScheduledJobs = objWMIService.ExecQuery _
("Select * from Win32_ScheduledJob")

For Each objJob in colScheduledJobs
Wscript.Echo "Caption: " & objJob.Caption
Wscript.Echo "Command: " & objJob.Command
Wscript.Echo "Days of Month: " & objJob.DaysOfMonth
Wscript.Echo "Days of Week: " & objJob.DaysOfWeek
Wscript.Echo "Description: " & objJob.Description
Wscript.Echo "Elapsed Time: " & objJob.ElapsedTime
Wscript.Echo "Install Date: " & objJob.InstallDate
Wscript.Echo "Interact with Desktop: " & objJob.InteractWithDesktop
Wscript.Echo "Job ID: " & objJob.JobID
Wscript.Echo "Job Status: " & objJob.JobStatus
Wscript.Echo "Name: " & objJob.Name
Wscript.Echo "Notify: " & objJob.Notify
Wscript.Echo "Owner: " & objJob.Owner
Wscript.Echo "Priority: " & objJob.Priority
Wscript.Echo "Run Repeatedly: " & objJob.RunRepeatedly
Wscript.Echo "Start Time: " & objJob.StartTime
Wscript.Echo "Status: " & objJob.Status
Wscript.Echo "Time Submitted: " & objJob.TimeSubmitted
Wscript.Echo "Until Time: " & objJob.UntilTime
Next

Lyes

"jbongran" wrote:

"Lyes" a écrit dans le message de
news:
> Bonjour,
>
> J'ai besoin de réaliser l'inventaire exhaustif des taches planifiées de
> l'ensemble des 200 serveurs du domaine Active Directory 2003 de
> l'entreprise.
>
> J'aimerai savoir si il existe un script vbs ( ou autre) permettant de
> réaliser cette opération sans se connecter interactivement (via TSE/RDP)
> sur
> chaques serveurs?
>
> De plus je m'apperçois que j'ai de plus en plus besoin d'apprendre à
> scripter en VBS
> et dès que je récupère un script j'ai bcp de mal à le modifier pour
> l'adapter à une situation type.
> Quelqu'un connait il un très très bon livre ou tutoriel pour devenir un
> pro
> du vbs quand on comprend rien à la programmation?
>
> Lyes


Le script recherché t'attend ici:
http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true
Le script center est une ressource incontournable si l'anglais n'est pas un
frein pour toi
http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx



Avatar
Lyes
Merci Philemil,

Ton script est génial. IT works !

Lyes

"Philemil" wrote:

Lyes a écrit :
> Bonjour,

Bonjour

>
> J'ai besoin de réaliser l'inventaire exhaustif des taches planifiées de
> l'ensemble des 200 serveurs du domaine Active Directory 2003 de l'entreprise.
>
> J'aimerai savoir si il existe un script vbs ( ou autre) permettant de
> réaliser cette opération sans se connecter interactivement (via TSE/RDP) sur
> chaques serveurs?
>

une idée peut-être ?
rapidement avec un petit batch , avec "schtasks.exe"

dans le même répertoire:
- en entrée fichier "liste.txt" comportant la liste des serveurs
- sortie dans un fichier taches.txt,



--- Couper ici -- inventaire.cmd -----
@echo off
echo Interrogation des tâches planifiées des ordinateurs de la liste
cd /d %~dp0
echo Inventaire le %date% %time% > taches.txt
echo =================================================== >> taches.txt
FOR /F %%i IN (liste.txt) do (
echo %%i
echo %%i >> taches.txt
schtasks /Query -s %%i >> taches.txt
echo. >> taches.txt
echo --------------------------------------------------- >> taches.txt
echo. >> taches.txt
)
--- Couper ici -- inventaire.cmd -----


> De plus je m'apperçois que j'ai de plus en plus besoin d'apprendre à
> scripter en VBS
> et dès que je récupère un script j'ai bcp de mal à le modifier pour
> l'adapter à une situation type.
> Quelqu'un connait il un très très bon livre ou tutoriel pour devenir un pro
> du vbs quand on comprend rien à la programmation?
>
> Lyes
bon courage pour la suite
Philippe



Avatar
jbongran
"Lyes" a écrit dans le message de
news:
Bonjour,

Merci pour votre réponse.
J'avais en effet déjà consulté le script center technet et trouvé le
script ci dessous simplement j'ignore comment l'adapter pour qu'il cherche
dans AD tous les ordinateurs avec des systèmes d'exploitations windows
2000svr/advsvr/2003/2008 et qu'il remplace à la volé le contenu de
strComputer par le nom d'un serveur.
J'effectue un actuellement un stage de 6 mois sur le thème restructuration
de AD et je m'apperçois que j'ai énormément besoin de solutions scriptées
mais je ne sais pas scripter.
C'est pourquoi je pose beaucoup de question sur ce forum.
mais je consulte aussi tous les jours le script center technet.

Lyes.

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!" & strComputer & "rootcimv2")

Set colScheduledJobs = objWMIService.ExecQuery _
("Select * from Win32_ScheduledJob")

For Each objJob in colScheduledJobs
Wscript.Echo "Caption: " & objJob.Caption
Wscript.Echo "Command: " & objJob.Command
Wscript.Echo "Days of Month: " & objJob.DaysOfMonth
Wscript.Echo "Days of Week: " & objJob.DaysOfWeek
Wscript.Echo "Description: " & objJob.Description
Wscript.Echo "Elapsed Time: " & objJob.ElapsedTime
Wscript.Echo "Install Date: " & objJob.InstallDate
Wscript.Echo "Interact with Desktop: " & objJob.InteractWithDesktop
Wscript.Echo "Job ID: " & objJob.JobID
Wscript.Echo "Job Status: " & objJob.JobStatus
Wscript.Echo "Name: " & objJob.Name
Wscript.Echo "Notify: " & objJob.Notify
Wscript.Echo "Owner: " & objJob.Owner
Wscript.Echo "Priority: " & objJob.Priority
Wscript.Echo "Run Repeatedly: " & objJob.RunRepeatedly
Wscript.Echo "Start Time: " & objJob.StartTime
Wscript.Echo "Status: " & objJob.Status
Wscript.Echo "Time Submitted: " & objJob.TimeSubmitted
Wscript.Echo "Until Time: " & objJob.UntilTime
Next

Lyes

"jbongran" wrote:

"Lyes" a écrit dans le message de
news:
> Bonjour,
>
> J'ai besoin de réaliser l'inventaire exhaustif des taches planifiées de
> l'ensemble des 200 serveurs du domaine Active Directory 2003 de
> l'entreprise.
>
> J'aimerai savoir si il existe un script vbs ( ou autre) permettant de
> réaliser cette opération sans se connecter interactivement (via
> TSE/RDP)
> sur
> chaques serveurs?
>
> De plus je m'apperçois que j'ai de plus en plus besoin d'apprendre à
> scripter en VBS
> et dès que je récupère un script j'ai bcp de mal à le modifier pour
> l'adapter à une situation type.
> Quelqu'un connait il un très très bon livre ou tutoriel pour devenir un
> pro
> du vbs quand on comprend rien à la programmation?
>
> Lyes


Le script recherché t'attend ici:
http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true
Le script center est une ressource incontournable si l'anglais n'est pas
un
frein pour toi
http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx







Tous les jours, ce n'est peut être pas la peine non plus ;-)
Désolé pour le lien vers le script qui liste les taches planifiées, le lien
correct est celui-ci:
http://www.microsoft.com/technet/scriptcenter/scripts/os/tasks/ostkvb04.mspx
Pour en revenir à ton sujet initial, considère que les codes trouvés par
exemple dans le script center sont des "briques" prévues pour faire UNE
tâche.
Donc il te manque une "brique" pour énumérer les ordinateurs tournants sur
une version spécifique de Windows dans l'AD, et il est ici:
http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true
L'idée pour transformer tout ça est assez simple
Transformer le premier script en une fonction, recevant en paramètre le nom
d'ordinateur:
Mettre en première ligne du script
Function ListScheduledTask(strComputer)
Enlever la première ligne du script strComputer = "."
Mettre à la fin du script
End Function

Coller avant ou après le script qui liste les ordis
Modifier le DC ciblé dcúbrikam, dc=com par le votre
Modifier la ligne
Wscript.Echo objRecordSet.Fields("Name").Value
Par celle-ci
Wscript.Echo "Liste des taches sur l'ordinateur: " &
objRecordSet.Fields("Name").Value
Ajouter juste en-dessous un appel à la fonction créé au tout début:
Call ListScheduledTask(objRecordSet.Fields("Name").Value)

J'ai pas testé, mais j'espère que vous voyez l'idée, bon courage.
Avatar
jbongran
"jbongran" a écrit dans le message de
news:
Donc il te manque une "brique" pour énumérer les ordinateurs tournants sur
une version spécifique de Windows dans l'AD, et il est ici:
http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true


Jamais deux sans trois, voici le lien correct
http://www.microsoft.com/technet/scriptcenter/scripts/ad/search/computers/srch011.mspx
Avatar
Lyes
Bonjour jbongran,
Merci pour l'explication. Bien que le script ecrit par Philippe est très
bien fonctionné je vais quand même mettre en oeuvre la solution que tu m'as
présenté.
Je te tiens au courant pour mardi des résultats.
Merci beaucoup pour ton aide.

Lyes.

"jbongran" wrote:

"jbongran" a écrit dans le message de
news:
> Donc il te manque une "brique" pour énumérer les ordinateurs tournants sur
> une version spécifique de Windows dans l'AD, et il est ici:
> http://www.microsoft.com/technet/scriptcenter/scripts/default.mspx?mfr=true
Jamais deux sans trois, voici le lien correct
http://www.microsoft.com/technet/scriptcenter/scripts/ad/search/computers/srch011.mspx



Avatar
Gilles LAURENT [MVP]
"jbongran" a écrit dans le message de
news:
| "jbongran" a écrit dans le message de
| news:

Bonjour,

| Jamais deux sans trois, voici le lien correct
|
http://www.microsoft.com/technet/scriptcenter/scripts/ad/search/computers/srch011.mspx

Je pense que cette fois-ci il n'y aura pas de trois ;-)

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr