chaser21a
Goto Top

Wmic command per Batch ausführen

Hallo Community,

Ich möchte gerne per Batchdatei bei mehreren Rechnern über den cmd command:

wmic /node:pc1 qfe where(installedon like "%/%/2017") list full /format:csv > C:\temp\updates.csv  

Die installierten Windows Updates von Netzwerkrechnern auslesen.
Wenn ich den Command direkt in cmd.exe aufrufe und eine Rechnernamen mitgebe funktioniert er korrekt.

Nun hab ich eine Textdatei in welcher die Rechnernamen (je Zeile ein Rechnername) stehen.

Meine Batch sieht bisher so aus:

FOR /F %%i IN (rechner.txt) DO
(
wmic /node:%%i qfe where(installedon like "%%/%%/2017") list full /format:csv > C:\temp\updates.csv  
)

Beim Aufruf der Batch erhalte ich immer die Fehlermeldung "Syntaxfehler".
Es ist sicher nur eine Kleinigkeit die ich übersehe.

Wäre dankbar wenn mir jemand weiterhelfen könnte.

Content-Key: 345952

Url: https://administrator.de/contentid/345952

Printed on: April 20, 2024 at 04:04 o'clock

Member: emeriks
Solution emeriks Aug 10, 2017 at 13:19:34 (UTC)
Goto Top
Hi,
warum doppelst Du das % auch im WMIC-Parameter?

E.
Member: rubberman
Solution rubberman Aug 10, 2017 at 16:48:03 (UTC)
Goto Top
Zitat von @emeriks:
warum doppelst Du das % auch im WMIC-Parameter?
Völlig korrekt um ein Prozentzeichen in einem Literal darzustellen. Ist eines der Unterschiede zwischen der Kommandozeile und Batchscripts.

@echo off &setlocal
>"C:\temp\updates.csv" (  
  for /f "usebackq delims=" %%i in ("rechner.txt") do (  
    wmic /node:"%%i" qfe where "installedon like '%%/%%/2017'" list full /format:csv  
  )
)
Grüße
rubberman