chcę szukać napisu „wirtualny” w „model systemu” atrybut „sysinfo” polecenia. Polecenie powinno się powieść, jeśli w modelu systemowym "" znaleziono "wirtualny": -------------------------, tj. Wyjście z informacji systeminfo . Nie powinno szukać "wirtualnego" w całym wyniku polecenia systeminfo, ale powinno robić to tylko w atrybucie modelu systemowego. Na przykład poleceniaSzukaj ciąg w wyjściu linii poleceń
systeminfo | findstr /i "system model"
dostanę coś takiego
System Model: HP Compaq dc7800p Small Form Factor
w powyższym wierszu wyjścia Chcę wyszukać ciąg wirtualny, i chcą manipulować przy użyciu ERRORLEVEL. Więc proszę, pomóż mi to zrobić.
Oto, który próbowałem, który nie był prawidłowy. Albo mi pomóc, jeśli mogę użyć wyrażeń regularnych
systeminfo | findstr /i /R "system model: virtual machine" > nul
if %errorlevel% == 0 (
echo virtual machine
) ELSE (
echo physical machine
)
z góry dzięki
to znajdzie dowolny plik, który zaczyna się od "system" lub "model". Aby wyszukać ciąg "model systemu" użyj 'findstr/i/b/C:" model systemu "' (nie ma problemu w tym szczególnym przypadku, ponieważ nie ma linii w 'systeminfo', która zaczyna się od" Model ") – Stephan
@ Stephan masz rację! Działa teraz, ale może być problemem w przyszłości, jeśli system Windows zmieni informacje generowane przez systeminfo. Dodam/C: do mojej odpowiedzi. Dzięki za wzmiankę o tym! – THelper