Vous êtes sur la page 1sur 4

PowerShell

Sur lAD, on ouvre powershell en tant quadministateur.


On tape la commande suivante : Set-ExecutionPolicy
remotesigned
Cette commande permet lxecution de script non sign en local
mais pas distance.
Le powershell se compose de commandes objets dont le nom et
la construction suivent une terminologie norme. Leur nom est
compos comme ceci :
Action-objet
Les actions sont les suivantes :
Get- Set- New- WriteStart-

Stop-

Remove- etc..

La commande Get-Command recense toute les commandes de bases.


La commande Write permet dcrire ce que lon veut.
La commande Read-host correspond console readline en c#
Le script :
$r=Read-Host
$ch= =$r + concatne
write la valeur saisie est $r et modifie $ch
lorsquon lexecute (./nomduscript.ps1) on a juste ajouter un
texte et il saffiche comme ceci (exemple avec bonjour) ca
donne :
bonjourconcatne

Pour crer un script qui affiche son prenom et nom comme ceci :
Georges Lucas = glucas

On fait le script suivant :


Write indiquez votre prenom
$r=read-host
$r1= $r .substring(0,1)
$1
write indiquez votre nom
$r2=read-host
$r1+r2
Pour crer un script qui test si une valeur est plus grande que
lautre, on fait:
Write indiquez un nombre
$r1=read-host
write indiquez un autre nombre
$r2=read-host
if($r1 lt $r2)
{
write r$2 est plus grand que $r1
}
else {
write $r1 est plus grand que $r2
}
Pour faire un script qui inspecte tout un dossier et qui dit si
le fichier indiqu par lutilisateur existe, on fait :
Write indiquez un fichier
$r1=read-host
$dossier= dir C:\Users\Administrateur\Downloads name
$ok=$false
foreach($I in $dossier)
{
if($r1 eq $i)
{
$ok=$true
}
}
if ($ok eq $false)
{
write le fichier nexiste pas
}
else {
write le fichier existe
}

$nom
$prenom
$login = $prenom.substring(0,1)+$nom
$pass=convertto-securestring siojjr2$ -asplaintext -force

Pour charger les commandes Active directory, on lance la


commande suivante:
Import-Module ActiveDirectory. Dans cet import, on retrouve
certaines commandes comme :
New-Aduser Crer un utilisateur ActiveDirectory
Get-Aduser Obtient un ou plusieurs utilisateurs Active
Directory
Remove-Aduser Supprime un utilisateur Active Directory
Set-Aduser Modifie les proprits dun utilisateur Active
Directory
New-AdorganizationalUnit Crer une unit dorganisation
Get-AdorganizationalUnit Obtient une ou plusieurs units
dorganisation
Remove-AdorganizationalUnit Supprime une unit
dorganisation
Set-AdorganizationalUnit Modifie les proprits dune unit
dorganisation
New-Adgroup Crer un groupe
Get-Adgroup Obtient un ou plusieurs groupes
Remove-Adgroup Supprime un groupe
Set-Adgroup Modifie les proprits dun groupe

Pour ajouter une unit dorganisation dans lunit


dorganisation TestPowerShell, on fait le script suivant :
$Nom=read-host
$Cnldap= ou=TestPowerShell,dc=booktik4a,dc=local
$TestOU=Get-ADOrganizationalUnit Filter Name eq $Nom
searchBase $Cnlap
if ($($TestOU) eq $null)
{
New-ADOrganizatrionalUnit Name $Nom path $Cnldap
Write OU $Nom: cre
}

Pour ajouter un nouvel utilisateur, on excute le script


suivant :
$Nom=Read-host -prompt "Entrez le nom de l'utilisateur crer
: "
$Prenom=Read-host -prompt "Entrez le prnom de l'utilisateur
crer : "
$login=$Prenom.substring(0,1)+$Nom
$CNldap="ou=Testpowershell,dc=booktik4a,dc=local"
$pass=convertto-securestring "siojjr2$" -asplaintext -force
$TestUser=Get-ADUser -Filter 'SamAccountName -eq $login'
-searchBase $CNldap
if ($TestUser -eq $null)
{
New-ADUser -SamAccountName "$login" -GivenName "$Prenom"
-Surname "$Nom" -Enabled $True -accountpassword $pass
-path "$CNldap"
Write " Utilisateur $Nom cre "
}

Pour crer un groupe, on lance le script suivant :


$Nom=Read-host -prompt "Entrez le nom du groupe crer : "
$CNldap="ou=TestPowerShell,dc=booktik4a,dc=local"
$TestGrp=Get-ADGroup -Filter 'Name -eq $Nom' -searchBase
$CNldap
if ($TestGrp -eq $null)
{
New-ADGroup -Name "$Nom" -path "$CNldap" -groupscope
global
Write " Groupe $Nom cre "
}