Created
December 21, 2018 07:30
-
-
Save muink/72c633c65ddbfaf9aee4c336b191d99c to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @echo off | |
| :: Letter Viewer | |
| :: View active drive letter, free drive letter and system drive letter | |
| :: Author: muink | |
| :[GetLetter] | |
| setlocal enabledelayedexpansion | |
| :: Get letter | |
| for /f "tokens=1* delims=: " %%i in ('fsutil fsinfo drives') do set "acti=%%j" | |
| set actletter= | |
| set winletter= | |
| set freeletter=C D E F G H I J K L M N O P Q R S T U V W X Y Z | |
| setlocal enabledelayedexpansion | |
| :[GetLetter]loop | |
| for /f "tokens=1* delims=:\ " %%i in ("%acti%") do ( | |
| :: For Win | |
| rem fsutil fsinfo drivetype %%i:|findstr /i "CD-ROM Ram /">nul 2>nul||( | |
| :: For WinPE not have "findstr" | |
| fsutil fsinfo drivetype %%i:|find /i /v "CD-ROM"|find /i /v "Ram"|find /i /v "/">nul&&( | |
| :: Used Letter | |
| if defined actletter (set "actletter=%actletter% %%i") else set "actletter=%%i" | |
| :: Win Letter | |
| if exist "%%i:\Windows\System32\config\SYSTEM" ( | |
| if defined winletter (set "winletter=%winletter% %%i") else set "winletter=%%i" | |
| ) ) | |
| :: Free Letter | |
| if defined freeletter set "freeletter=!freeletter:%%i=!"&set "freeletter=!freeletter: = !" | |
| set "acti=%%j" | |
| goto :[GetLetter]loop | |
| rem goto %~0loop | |
| ) | |
| call:[ClearSpace] freeletter | |
| set winletter=!winletter:%SystemDrive:~0,1%=! | |
| call:[ClearSpace] winletter | |
| echo.Act [%actletter%] | |
| echo.Free [%freeletter%] | |
| echo.Win [%winletter%] | |
| pause>nul | |
| exit | |
| :[ClearSpace] | |
| setlocal enabledelayedexpansion | |
| set "tmpletter=!%1!" | |
| for /f "tokens=* delims= " %%i in ("%tmpletter%") do set "tmpletter=%%i" | |
| if not defined tmpletter set "tmpletter=0" | |
| if "%tmpletter:~-1%" == " " set "tmpletter=%tmpletter:~0,-1%" | |
| for /f "delims=" %%i in ("%tmpletter%") do endlocal&set "%1=%%i" | |
| goto :eof | |
| rem [批处理获取U盘、可移动硬盘的盘符(2015-01-14更新)](http://www.bathome.net/thread-3569-1-8.html) | |
| rem [处理获取硬盘盘符](http://xiao-hua.iteye.com/blog/807094) | |
| rem [批处理,修改环境变量path的方法(加环境变量) ](http://blog.sina.com.cn/s/blog_ad11836f01017dr7.html) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment