juin
2011
C’est au fur et à mesure,en jouant avec powershell que j’ai noté et gardé ces bricoles…
Si ça crame, ces p’tits scripts, scriptlets ou commandlet seront au moins sauvés ici …
Accès à une clé de Registre
A noter : en Powershell, le registre est considéré comme un lecteur « logique » (type C:\) d’où la syntaxe HKLM:\ …
Accès à une propriété d’une clé de Registre
$val= get-itemProperty $key.PSPath |select ProductName
A noter : la propriété .pspath est indispensable pour bypass le chemin « physique » (exemple c:\documents and settings…) par défaut.
La partie « |select… » est optionnelle, elle permet de ne récuperer que certaines propriétés ( select étant un alias de select-object)
Liste des pilotes d’impression installés
$collection =Get-WmiObject win32_Printerdriver | select name,version, supportedplatform
foreach ($drivers in $collection)
{ $liste+=($drivers.name -split ",")[0]}
$liste
Création unitaire d’une file d’impression
Ce script n’installe aucun pilote, il se contente de créer, partager et publier dans l’AD une file correspondant aux variables renseignées…
Gros pré-requis : connaitre le libellé exact du pilote que l’on va utiliser ! cf script précédent…
$Comment="Patati..."
$Emplacement="Bureau XXX"
$DriverName = "Lexmark Universal XL" #<== Tres important !!
$IPAddress = "192.168.XXX.XXX"
$PortName = "Port-IPXXX"
# creation du port
$ClassIPPrnPort= [wmiclass]'Win32_TCPIPPrinterPort'
$NewPort= $ClassIPPrnPort.CreateInstance()
$NewPort.HostAddress = $IPAddress
$NewPort.Name = $PortName
$NewPort.Protocol = 1 # 1 = Raw, 2 = LPR
$NewPort.SNMPEnabled = $false
$ResultPort=$NewPort.Put()
# ajout de la file
$ClassPrinter= [wmiclass]'Win32_Printer'
$NewPrinter= $ClassPrinter.CreateInstance()
$NewPrinter.DriverName = $DriverName
$NewPrinter.DeviceID = $Name
$NewPrinter.PortName = $PortName
$newprinter.Shared = $true
$newprinter.Published = $true
$newprinter.Sharename = $Name
$newprinter.Location = $Emplacement
$newprinter.Comment = $Comment
$ResultPrinter=$NewPrinter.Put()
Liste des services arrêtés d’une machine distante
Aussi connu sous le nom : le « ça ressemble à un ‘ps pipe grep' »
Parcours d’un tableau, concaténation et transtypage
Parcours du tableau $var contenant les valeurs 0 1 2 3 4
Bien initialiser la variable $result en tant que tableau.