PDA

View Full Version : comandi dos per versione so


monkey72
27-08-2004, 12:25
c'è un comando dos da inserire in un file batch per conoscere il tipo di sistema operativo e la versione?

tnx
monkey ;)

zei78
27-08-2004, 12:30
ver oppure winver

monkey72
27-08-2004, 12:38
che velocità!!!!
grazie 1000!!!! ;)

monkey72
27-08-2004, 13:03
come variabile d'ambiente? ho visto %os% ma mi sa che non mi dice il sp a cui è aggiornato...

Manp
27-08-2004, 13:09
@ECHO OFF

:: Win9x checks ::::::::::::

VER |find /i "Windows 95" >NUL
IF NOT ERRORLEVEL 1 GOTO W9598ME

VER |find /i "Windows 98" >NUL
IF NOT ERRORLEVEL 1 GOTO W9598ME

VER |find /i "Windows Millennium" >NUL
IF NOT ERRORLEVEL 1 GOTO W9598ME

:: NT/XP checks ::::::::::::

VER | find "XP" > nul
IF %errorlevel% EQU 0 GOTO s_win_XP

VER | find "2000" > nul
IF %errorlevel% EQU 0 GOTO s_win_2000

VER | find "NT" > nul
IF %errorlevel% EQU 0 GOTO s_win_NT

ECHO Unknown OS !
GOTO :end

:: Win9x commands ::::::::::::

:W9598ME
ECHO Win9x commands go here
GOTO :end

:W98
ECHO Win98 commands go here
GOTO :end

:: NT/XP commands ::::::::::::

:s_win_XP
ECHO XP commands go here
GOTO :end

:s_win_2000
ECHO WIN2K commands go here
GOTO :end

:s_win_NT
ECHO NT4 commands go here
GOTO :end

:end
pause

http://www.ss64.com/nt/ver.html

EDIT: adesso funziona meglio

:)

Manp
27-08-2004, 13:24
così riconosce l'os in generale... all'interno di ognuno si può mettere un ulteriore check sulla versione numerica in modo da stabilire il service pack installato

ad esempio

@ECHO OFF

VER | find "XP" > nul
IF %errorlevel% EQU 0 GOTO s_win_XP

:s_win_XP
VER | find "2600" > nul
IF %errorlevel% EQU 0 GOTO s_win_XPSP1

:s_win_XPSP1
ECHO Windows XP SP1 commands
GOTO :end



oppure si può fare un solo check direttamete sulla versione mumerica della build che si per sè dice tutto, tipo di OS e SP installato

non so se sia il modo più elegante, non credo però... :D

:)

monkey72
27-08-2004, 13:31
mamma... ci impiegherò mezza giornata a capirli ma penso che sia quello che mi serve! :D

ancora grazie! ;)

Manp
27-08-2004, 13:38
Originariamente inviato da monkey72
mamma... ci impiegherò mezza giornata a capirli ma penso che sia quello che mi serve! :D

ancora grazie! ;)

ma no, se giuardi si usano sempre gli stessi 2 comandi...

io ti consiglio di fare il check sulla build numeriuca e non sul nome, è più veloce da fare e più preciso ;)



:)

Windows 95 [Version 4.00.950]
Windows 95 [Version 4.00.1111] OSR2
Windows 98 [Version 4.10.1998]
Windows 98 [Version 4.10.2222] Win98SE, Second Edition
Windows Millennium [Version 4.90.3000] WinME

per Win 2000/XP dovresti cercarti a che SP corrispondono il numero delle build dopo 5.00 (per 2000) e 5.1 (per XP)

:)

monkey72
27-08-2004, 13:55
purtroppo non conosco granchè i comandi dos... :(
cmq in linea generale penso di aver capito che cercando col comando find nella stringa ottenuta dal comando ver la sottostringa del so e della versione stabilisco dall'error level se è quella che cerco...
ma... non ridete... il simbolo "|" serve a? :D

monkey72
30-08-2004, 08:48
Originariamente inviato da Manp
ma no, se giuardi si usano sempre gli stessi 2 comandi...

io ti consiglio di fare il check sulla build numeriuca e non sul nome, è più veloce da fare e più preciso ;)
...
per Win 2000/XP dovresti cercarti a che SP corrispondono il numero delle build dopo 5.00 (per 2000) e 5.1 (per XP)

:)
ok, ho capito, ma dove le potrei trovare queste info per w2k/XP? a parte installare un sp alla volta e fare ver? :D

tnx ;)

monkey72
30-08-2004, 10:38
ho visto che su due macchine su cui sono installati rispettivamente win2k sp1 e win2k sp4 il comando ver da sempre "Microsoft Windows 2000 [Versione 5.00.2195]" :(