首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

不走寻常路:用DOS命令写个bat脚本,让硬盘分区操作更加简单

硬盘分区操作我们最常用的是傲梅分区助手、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等专业工具,但是它的优点方便性,可以快速的帮我们进行一些简单的硬盘分区操作。

最后感谢大家的关注、观看,如果你有好的建议和方法,欢迎留言。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200826A08X8O00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券