Unterscheidet sich das Dienstprogramm "find" unter Windows 7 von dem unter Windows XP?


1

Ich habe ein Batch-Skript erstellt, das unter Windows XP funktioniert, unter Windows 7 jedoch fehlerfrei ist.

Das Skript findet im Grunde heraus, was das Betriebssystem ist.

wmic os get | find "Windows XP">nul
if %ERRORLEVEL% == 0 goto winxp

wmic os get | find "Windows 7”>nul
if %ERRORLEVEL% == 0 goto win7

Das funktioniert unter Windows XP, aber nicht unter Windows 7. Windows 7 gibt den folgenden Fehler aus:

FIND: Parameter format not correct

Meine Frage lautet also: Wurde das Suchdienstprogramm geändert?


Ich hoffe, Sie haben dies kopiert.
William Jackson

Natürlich. Ich teste gerade die unten genannte Lösung aus.
Qroberts

Antworten:


2

Ich denke, es ist das lustig aussehende doppelte Anführungszeichen.

wmic os get | find "Windows XP"> nul if% ERRORLEVEL% == 0 goto winxp

:: SMART QUOTES FTL

wmic os get | find "Windows 7"> nul if% ERRORLEVEL% == 0 goto win7


Ja, intelligente Zitate FTL. Seltsamerweise muss ich noch einen Texteditor finden, der solche Fehler in Batchdateien hervorhebt. Auch die Powershell ISE korrigiert oder markiert solche Fehler nicht direkt. Sie werden nur bemerken, dass die Zeichenfolgen rot gefärbt sind.
Surfasb

Ich benutze Notepad ++ als Batch-IDE.
Qroberts

Ja, das wäre auch meine Wahl. Ich könnte schwören, dass es Plugins oder Skripte gibt, die direkt vor dem Speichern ausgeführt werden. Ich muss dafür googeln.
Surfasb
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.