硬盘分区操作我们最常用的是傲梅分区助手、diskgenus等工具,它们看似复杂其实操作蛮简单的,而且功能也十分强大。但是笔者最近突发奇想,想能不能不使用任何第三方工具,来实现对我们的硬盘的分区操作呢。于是,笔者就用WINDOWS自带的diskpart命令写了一个《硬盘分区快捷脚本》脚本。下面跟我一起来看看。
《硬盘分区快捷脚本》脚本,包含5项功能:压缩分区、扩展分区、删除分区、增加主分区、增加逻辑分区,以对我们的硬盘分区进行操作。
【1】压缩分区
点开《硬盘分区快捷脚本》脚本,选定磁盘,想压缩的分区,系统判断出该分区可回收的最大容量,输入想要释放的容量大小,回车即可。
这里,就是我们压缩分区,释放容量的效果。释放出的容量,我们可以重新建立一个分区来使用。
【1】扩展分区
选定磁盘,选定想扩展的分区,硬盘上未使用的剩余空间自动分配给我们想要扩展的分区。
这就是效果。注意,扩展分区只能是在其之后的空闲空间。这点很扯淡,不过diskpart就只能这样了。
【3】删除分区
选择磁盘,选择分区,回车即可删除。
扩展的分区删除时,显示绿色。如果我们想将它分配到主分区则需要再删除掉扩展的分区。
删除扩展分区。
成功删扩展分区。
扩展主分区。
成功扩展主分区。
【4】增加主分区
想要增加分区的磁盘上存在空闲空间,即可选择磁盘,自动将空闲空间创建成为一个主分区,并分配驱动器,激活主分区。
如图,成功创建主分区。
【5】 增加逻辑分区
磁盘上有空闲空间,选择磁盘,回车即可自动将空闲空间创建成为一个逻辑分区,并分配驱动器号。
如图,成功创建逻辑分区。
【6】代码
批处理如下:
@echo off
mode con cols=80 lines=25
color 1f
if exist "%SystemRoot%\SysWOW64" path %path%;%windir%\SysNative;%SystemRoot%\SysWOW64;%~dp0
bcdedit >nul
if '%errorlevel%' NEQ '0' (goto UACPrompt) else (goto UACAdmin)
:UACPrompt
%1 start "" mshta vbscript:createobject("shell.application").shellexecute("""%~0""","::",,"runas",1)(window.close)&exit
exit /B
:UACAdmin
cd /d "%~dp0"
echo 当前运行路径是:%CD%
echo 已获取管理员权限
:CMD
echo 【硬盘分区快捷脚本】
echo by 银角的大王
echo.
echo 1——压缩分区
echo.
echo 2——扩展分区
echo.
echo 3——删除分区
echo.
echo 4——增加主分区
echo.
echo 5——增加逻辑分区
set /p a=请输入选择:
if "%a%"=="1" goto cmd1
if "%a%"=="2" goto cmd2
if "%a%"=="3" goto cmd3
if "%a%"=="4" goto cmd4
if "%a%"=="5" goto cmd5
:cmd1
echo list disk > diskpart.txt
diskpart /s diskpart.txt
set /p b=请输入选择的磁盘(如0)
echo sel disk %b% > diskpart.txt
echo list par >> diskpart.txt
diskpart /s diskpart.txt
set /p c=请输入想压缩的分区盘符编号(如:0)
echo sel disk %b% > diskpart.txt
echo sel par %c% >> diskpart.txt
echo shrink querymax >> diskpart.txt
diskpart /s diskpart.txt
set /p h= 请输入释放容量大小(单位M):
echo sel disk %b% > diskpart.txt
echo sel par %c% >> diskpart.txt
echo shrink desired=%h% >> diskpart.txt
diskpart /s diskpart.txt
pause
goto CMD
:cmd2
echo list disk > diskparts.txt
diskpart /s diskparts.txt
set /p d=请输入选择的磁盘(如0)
echo sel disk %d% > diskparts.txt
echo list par >> diskparts.txt
diskpart /s diskparts.txt
set /p e=请输入想扩展的分区盘符编号(如:0)
set /p f=请输入分配多少空间到该分区上(单位M)
echo sel disk %d% > diskparts.txt
echo sel par %e% >> diskparts.txt
echo extend size=%f% >> diskparts.txt
diskpart /s diskparts.txt
pause
goto CMD
:cmd3
echo list disk > diskpart.txt
diskpart /s diskpart.txt
set /p i=请输入选择的磁盘(如0)
echo sel disk %i% > diskpart.txt
echo list par >> diskpart.txt
diskpart /s diskpart.txt
set /p j=请输入想删除的分区盘符编号(如:0)
echo sel disk %i% > diskpart.txt
echo sel par %j% >> diskpart.txt
echo del par >> diskpart.txt
diskpart /s diskpart.txt
pause
goto CMD
:cmd4
echo 增加主分区
echo list disk > diskpart.txt
diskpart /s diskpart.txt
set /p l=请输入disk号(如0)
echo sel disk %l% > diskpart.txt
echo create partition primary >>diskpart.txt
echo format fs=NTFS quick >>diskpart.txt
echo assign letter=O >>diskpart.txt
echo active >>diskpart.txt
diskpart /s diskpart.txt
pause
goto CMD
:cmd5
echo 增加逻辑分区
echo list disk >diskpart.txt
diskpart /s diskpart.txt
set /p p= 请输入disk号(如0)
echo sel disk %p% >diskpart.txt
echo create partition extended >>diskpart.txt
echo create partition logical>>diskpart.txt
echo format fs=NTFS quick >>diskpart.txt
echo assign letter=P >>diskpart.txt
diskpart /s diskpart.txt
pause
goto CMD
以上代码仅供参考。
总结下,这个利用diskpart命令实现硬盘分区操作的《硬盘分区快捷脚本》,它的功能性远远不如傲梅分区助手和diskgenus等专业工具,但是它的优点方便性,可以快速的帮我们进行一些简单的硬盘分区操作。
最后感谢大家的关注、观看,如果你有好的建议和方法,欢迎留言。
领取专属 10元无门槛券
私享最新 技术干货