Un pequeño script para recolectar informacion de un sistema, ideal para bichos, se ejecuta sin permisos de admin
@echo off
set /a cont=0
rem Recoleccion de datos
rem Tipo de SO
@wmic os get name > n.txt
cls
type n.txt | find /i "windows vista" && call :winvista
type n.txt | find /i "windows 7" && call :win7
type n.txt | find /i "windows xp" && call :winxp
rem Recoleccion de datos
rem ServicePack
for /f "tokens=1 skip=1" %%a in ('wmic os get servicepackmajorversion') do (call :spack %%a)
echo ServicePack: %SP%
rem Recoleccion de datos
rem Numero de serie
for /f "tokens=1 skip=1" %%a in ('wmic os get serialnumber') do (call :serial %%a)
echo SerialNumber: %SN%
for /f "tokens=1 skip=1" %%a in ('wmic os get countrycode') do (call :country %%a)
echo Codigo del Pais: %CT%
for /f "tokens=1 skip=1" %%a in ('wmic os get currenttimezone') do ( call :Ctime %%a)
echo Zona horaria: %Ctime% [Codigo de zona]
for /f "tokens=1 skip=1" %%a in ('wmic os get csname') do (call :PCname %%a)
echo Nombre del Host: %PC%
for /f "tokens=1 skip=1" %%a in ('wmic os get codeset') do (call :Cset %%a)
echo Codeset: %Cset%
for /f "tokens=1 skip=1" %%a in ('wmic os get oslanguage') do ( call :OSlan %%a)
echo Idioma: %OSlan%
echo Usuario: %username%
for /f "tokens=1 skip=1" %%a in ('wmic logicaldisk get caption') do (
if "%%a" EQU "" (echo.) else (call :logic %%a) )
del /q n.txt
exit /b
:noexiste
cls
echo "no existe nombre"
goto :eof
:win7
cls
set SO=windows7
echo Sistema: %SO%
goto :eof
:winvista
cls
set SO=windows_vista
echo Sistema: %SO%
goto :eof
:winxp
cls
set SO=windows_XP
echo Sistema: %SO%
goto :eof
:spack
if "%1" NEQ "" (set SP=%1 )
goto :eof
:serial
if "%1" NEQ "" (set SN=%1)
goto :eof
:country
if "%1" NEQ "" (set CT=%1)
goto :eof
:PCname
if "%1" NEQ "" (set PC=%1)
goto :eof
:Cset
if "%1" NEQ "" (set Cset=%1)
goto :eof
:OSlan
if "%1" NEQ "" (
set OSlan=%1
if "%1" EQU "3082" (set "OSlan=Castellano [%1]")
)
goto :eof
:Ctime
if "%1" NEQ "" (set Ctime=%1)
goto :eof
:logic
for /f "tokens=*" %%a in ('wmic logicaldisk %1') do (
echo %%a | find /i "disco fijo local" >nul && set Type=3)
for /f "tokens=*" %%a in ('wmic logicaldisk %1') do (
echo %%a | find /i "cd-rom" >nul && set Type=5)
for /f "tokens=*" %%a in ('wmic logicaldisk %1') do (
echo %%a | find /i "extra" >nul && set Type=2)
if "%Type%" EQU "3" (set DrTy=Disco_duro)
if "%Type%" EQU "5" (set DrTy=CDrom)
if "%Type%" EQU "2" (set DrTy=Extraíble)
if "%1" NEQ "" (echo UnidadLogica: %1 %DrTy%)
goto :eof