@ECHO OFF ECHO. ECHO ANALISIS DE UNIDADES: ECHO ---------------------- FSUTIL FSINFO DRIVES ECHO.
SET INDEX=%RANDOM%%RANDOM%%RANDOM%%RANDOM% SUBST > "VIRTUALES%INDEX%.TXT" FOR %%A IN (B C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO CALL :ANALIZAR_UNIDAD %%A
ECHO. IF "%UNIDAD_1%"=="" (ECHO NO HAY NINGUNA UNIDAD FIJA.) IF "%UNIDAD_2%"=="" (ECHO NO HAY NINGUNA UNIDAD DE CD-ROM.) IF "%UNIDAD_3%"=="" (ECHO NO HAY NINGUNA UNIDAD EXTRAIBLE.) IF "%UNIDAD_4%"=="" (ECHO NO HAY NINGUNA UNIDAD DESCONOCIDA.) IF "%UNIDAD_5%"=="" (ECHO NO HAY NINGUNA UNIDAD DE DISCO RAM.) IF "%UNIDAD_6%"=="" (ECHO NO HAY NINGUNA UNIDAD REMOTA O DE RED.) IF "%UNIDAD_7%"=="" (ECHO NO HAY NINGUNA UNIDAD VIRTUAL.) ECHO ---------------------- DEL /Q /F "VIRTUALES%INDEX%.TXT" > NUL DEL /Q /F "UNIDAD%INDEX%.TXT" > NUL PAUSE EXIT /B 0
:ANALIZAR_UNIDAD IF NOT EXIST "%1:" (GOTO :EOF) ELSE (SET LETRA=%1) FOR /F "USEBACKQ TOKENS=1 DELIMS=:" %%B IN ("VIRTUALES%INDEX%.TXT") DO IF "%LETRA%"=="%%B" ( SET UNIDAD_7=1&& ECHO LA UNIDAD %LETRA%: ES UNA UNIDAD VIRTUAL.&& GOTO :EOF) FSUTIL FSINFO DRIVETYPE %LETRA%: > "UNIDAD%INDEX%.TXT" FOR /F "USEBACKQ TOKENS=4 DELIMS= " %%C IN ("UNIDAD%INDEX%.TXT") DO SET TIPO=%%C IF /I "%TIPO%"=="FIJA" (SET UNIDAD_1=1&& ECHO LA UNIDAD %LETRA%: ES UNA UNIDAD FIJA.&& GOTO :EOF) IF /I "%TIPO%"=="DE" (SET UNIDAD_2=1&& ECHO LA UNIDAD %LETRA%: ES UNA UNIDAD DE CD-ROM.&& GOTO :EOF) IF /I "%TIPO:~0,2%"=="EX" (SET UNIDAD_3=1&& ECHO LA UNIDAD %LETRA%: ES UNA UNIDAD EXTRAIBLE.&& GOTO :EOF) IF /I "%TIPO:~0,3%"=="DES" (SET UNIDAD_4=1&& ECHO LA UNIDAD %LETRA%: ES UNA UNIDAD DESCONOCIDA.&& GOTO :EOF) IF /I "%TIPO%"=="RAM" (SET UNIDAD_5=1&& ECHO LA UNIDAD %LETRA%: HACE REFERENCIA A UN DISCO RAM.&& GOTO :EOF) IF /I "%TIPO:~0,4%"=="REMO" (SET UNIDAD_6=1&& ECHO LA UNIDAD %LETRA%: ES UNA UNIDAD REMOTA O DE RED.&& GOTO :EOF)