Druckserver 2/7: Netzwerkdrucker automatisiert abfragen (cmd)

Um das Auslesen der Drucker auf den Druckservers zu automatisieren, war der erste Gedanke eine Batch-Datei zu schreiben – ich komm halt aus der Dos-Zeit. Mein erstes Probelem war der Aufruf eines Powershell-Befehls aus einer „CMD“. Eigentlich blöd, aber es dauerte etwas, bis mir das auffiel….

Mein erstes Problem war das Aufrufen eines Powershell-Befehls aus einer CMD-Datei.
Es war dann aber doch einfacher als gedacht.

Bzw für alle 3 Druckserver der Aufruf als Schleife:

So mit hatte ich schonmal 3 CSV-Dateien. Jetzt sollte daraus nur noch eine Datei werden.
Da die CSV-Dateien 2 Kopfzeilen haben (1. Zeile Typenbezeichnung und dann die Spaltenbeschriftung), kann ich diese nicht einfach aneinanderfügen.
Der Befehl Export-CSV kann zwar die Typenangaben unterdrücken (Export-CSV -NoTypeInformation) , aber die Spaltenbeschriftungen würden beibehalten. Also verzichte ich darauf und schneide beide Kopfzeilen selber ab.

Das Ganze natürlich für alle 3 CSV-Dateien.

Da diese Datei nun aber auch den Microsoft XPS-Drucker, sowie den Freepdf- und einen Fineprint-Drucker installiert haben , und diese nicht in der Liste auftauchen sollten, muss die Gesamt-CSV-Datei noch „bereinigt“ werden.

Im Grund wars das. Das komplette Skript sieht dann so aus

Das Skript funktioniert und wird nun Werktags stündlich zwischen 7:00 bis 17:00 Uhr aufgerufen.
Läuft!
OK OK.
Das Zusammenfügen der einzelnen Dateien hätte ich auch in die Schleife integrieren können, aber da kam mir der Feierabend dazwischen …

… und ein Geistesblitz:
Warum verarbeite ich einen Powershellbefehl in einer Batch-Datei und nicht gleich in Powershell.

Gut – liegt vermutlich darin, dass ich mich mit Powershell nicht so wirklich befasst habe und somit ein leichtes Wissensdefizit habe.

Ein Grund, aber kein Hinderniss.
Weiter gehts im Teil 3