PowerShell: Rene Pärnpuu, Printerid.ps1: Difference between revisions

From ICO wiki
Jump to navigationJump to search
(Created page with '==Kirjeldus== Skript otsib lokaalsest arvutist ülesse kõik installeeritud printerid ja shareb kõikidele kasutajatele antud arvutis. '''gwmi win32_printer''' leiab kõik insta…')
 
 
Line 27: Line 27:
     "Printer: $nimi"
     "Printer: $nimi"
     "Shared: $shareStatus"
     "Shared: $shareStatus"
     "ShareName: $shareName"
     "ShareName: $shareName" }
}

Latest revision as of 10:44, 24 May 2011

Kirjeldus

Skript otsib lokaalsest arvutist ülesse kõik installeeritud printerid ja shareb kõikidele kasutajatele antud arvutis. gwmi win32_printer leiab kõik installeeritud printerid ning tänu filtrile võtame ainult lokaalsed. foreachiga laseme kõik printerid läbi ja tekitame sharename. Sharenamega probleemide vältimiseks asendame tühikud ja imesümbolid märgiga '_'

Skript

$printerid = gwmi win32_printer -filter "local='$true'" foreach ($printer in $printerid) {

   $nimi = $printer.Name
   $chars = ':', '?', '/', '\', '*', '<', '>', '|', '"', ' '
   foreach ($char in $chars) {
   while ($nimi.Contains($char)) {
     $nimi = $nimi -replace $char,'_'
     }
   }
   IF ($printer.ShareName -eq $Null)
   {
   $printer.ShareName = "share_$nimi"
   }
   IF (!$printer.Shared)
   {
   $printer.Shared = "True"
   }
   $shareStatus = $printer.Shared
   $shareName = $printer.ShareName
   "Printer: $nimi"
   "Shared: $shareStatus"
   "ShareName: $shareName" }