« PowerShell/Imprimante » : différence entre les versions

Aller à la navigation Aller à la recherche
mAucun résumé des modifications
mAucun résumé des modifications
 
Ligne 45 : Ligne 45 :


foreach ($imprimante in $imprimanteliste) {
foreach ($imprimante in $imprimanteliste) {
     Write-Output ("Mise à jour de l'imprimane {0} :" -f $imprimante.nom)
     Write-Output ("Mise à jour de l'imprimante {0} :" -f $imprimante.nom)
     Set-Printer -Name $imprimante.nom -Location $imprimante.localisation -Comment $imprimante.commentaire
     Set-Printer -Name $imprimante.nom -Location $imprimante.localisation -Comment $imprimante.commentaire
     Write-Output ("* localisation : {0} `n* commentaire : {1}`n" -f $imprimante.localisation, $imprimante.commentaire)
     Write-Output ("* localisation : {0} `n* commentaire : {1}`n" -f $imprimante.localisation, $imprimante.commentaire)

Dernière version du 10 janvier 2024 à 13:33

Généralité

Liste des imprimantes, avec tri sur le nom, avec quelques caractéristiques et affichage dans une fenêtre :

Get-Printer | 
   Sort-Object Name | 
   Select-Object Name, Comment, Location, Description, DeviceType, Type, PrinterStatus, Datatype, DriverName, PortName, PrintProcessor | 
   Out-GridView

Mise à jour des caractéristiques "emplacement" et "commentaire" pour l'imprimante dont le nom est "fax" :

Set-Printer -Name "fax" -Location "Dans le bureau" -Comment "Ceci est le commentaire"

Liste des imprimantes

Liste des imprimantes, avec tri sur le nom, avec les champs listés et avec sortie vers page HTML :

Get-Printer | 
   Sort-Object Name |
   Select-Object Name, Comment, Location, DeviceType, Type, PrinterStatus, Datatype, DriverName, PortName |
   Out-HtmlView

Mise à jour en masse

<#
Description : mise à jour des informations de localisation et de commentaire d'imprimantes, d'après un fichier texte au format CSV
Usage       : création du fichier de référence et exécution du script
Auteur      : fylip22
Version     : 1.0
Révisions   :
	- 1.0 (23/11/2023) : création du script
#>

# avec le fichier suivant en entrée et avec la première ligne d'entête comme suit :
# nom;localisation;commentaire
$Imprimanteliste = Import-Csv -Path c:\support\imprimanteliste.csv -Delimiter ";"

foreach ($imprimante in $imprimanteliste) {
    Write-Output ("Mise à jour de l'imprimante {0} :" -f $imprimante.nom)
    Set-Printer -Name $imprimante.nom -Location $imprimante.localisation -Comment $imprimante.commentaire
    Write-Output ("* localisation : {0} `n* commentaire : {1}`n" -f $imprimante.localisation, $imprimante.commentaire)
    }

Voir aussi

  •