无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 47889|回复: 158

diskpart 外壳脚本 简体中文版和英文版 Ver9.0

    [复制链接]
发表于 2018-6-4 13:20:41 | 显示全部楼层 |阅读模式
本帖最后由 dos时代菜鸟 于 2021-11-15 23:08 编辑

适用win7及以上版本。

本帖所涉及脚本已经 由 pecmd 2012 脚本取代,请移步
http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1


x9.08
DP-Script-X9.12.8.7z (18.59 KB, 下载次数: 345)

评分

参与人数 6无忧币 +26 收起 理由
qh6420933 + 5 很给力!
maomihuacha + 1
liangyi + 5 很给力!
zhczf + 5 期待出一个漂亮的图形界面版的
熄灭的火焰 + 5 很给力!
freesoft00 + 5

查看全部评分

 楼主| 发表于 2018-6-4 13:22:07 | 显示全部楼层
本帖最后由 dos时代菜鸟 于 2018-6-4 14:15 编辑

考虑到 操作 后 要进行 列表 信息更新,所以,相较  hd3y.cmd ,内部 脚本 区段 进行了 调整。

发现 删除 、创建 卷分区以后,卷 vol 号 可能发生混乱错位,但,程序不会 调用 列表中的 这个 vol ,只是用于区分 改卷是否支持 分配盘符。用户可以通过 手动  刷新列表 来纠正 这个显示错误。
回复

使用道具 举报

发表于 2018-6-4 15:46:42 | 显示全部楼层
支持楼主授人以渔的行为!
回复

使用道具 举报

发表于 2018-6-4 16:19:02 | 显示全部楼层
支持一下。
回复

使用道具 举报

发表于 2018-6-4 16:25:47 来自手机 | 显示全部楼层
真有精力,显示信息够详细!

我已经变懒了~

也可能我一直都懒
回复

使用道具 举报

 楼主| 发表于 2018-6-4 21:54:27 | 显示全部楼层
本帖最后由 dos时代菜鸟 于 2018-6-4 22:04 编辑

捕获.PNG 轻微改动了一下
可以显示 vhd 盘对应的文件名,可以显示 vhd 是否可扩展,可以显示 disk 的  Dyn 性质。
在 1楼
dp-script-7.84.cmd

感谢  freesoft00 提供的数据文本。

另外 , vhd 方面的 操作,可能要 单独 另写 脚本。这里暂时 先 不考虑 加入 vhd 相关的功能。

点评

vhd单独也可以。要不要操作的项目太多了。 磁盘分区的单独一个。 vhd操作的如果 兄弟写可以单独一个。  详情 回复 发表于 2018-6-4 22:03
回复

使用道具 举报

发表于 2018-6-4 22:01:49 | 显示全部楼层
好东西的分享
回复

使用道具 举报

发表于 2018-6-4 22:03:38 | 显示全部楼层
dos时代菜鸟 发表于 2018-6-4 21:54
轻微改动了一下
可以显示 vhd 盘对应的文件名,可以显示 vhd 是否可扩展,可以显示 disk 的  Dyn 性质。
...

vhd单独也可以。要不要操作的项目太多了。
磁盘分区的单独一个。
vhd操作的如果 兄弟写可以单独一个。

点评

还是要 请 帮忙 测试下 dyn 方面 是否能够 准确 定位。  详情 回复 发表于 2018-6-4 22:07
回复

使用道具 举报

 楼主| 发表于 2018-6-4 22:07:30 | 显示全部楼层
freesoft00 发表于 2018-6-4 22:03
vhd单独也可以。要不要操作的项目太多了。
磁盘分区的单独一个。
vhd操作的如果 兄弟写可以单独一个。

还是要 请 帮忙 测试下  dyn 方面 是否能够 准确 定位。

点评

硬盘分区序列 DiskPart:D:_6.1.7601,脚本:D: ------------------------------------------------------------------------------------------------  详情 回复 发表于 2018-6-4 22:22
回复

使用道具 举报

发表于 2018-6-4 22:22:13 | 显示全部楼层
dos时代菜鸟 发表于 2018-6-4 22:07
还是要 请 帮忙 测试下  dyn 方面 是否能够 准确 定位。


                          硬盘分区序列                                  DiskPart:D:_6.1.7601,脚本:D:
---------------------------------------------------------------------------------------------------------
  Num  Vol  HD:P   LTR   Fs       Size   Label         类型_偏移_活动_状态_信息
    1 ----   0    ----  -----  --------  ------------  Disk#0~0B/30GB~Bas~MBR~联机~~(VMware, VMware Virtual S SCSI Disk Device)
    2    2   0:1    C   NTFS      20 GB  系统盘符C         主要.1024KB.是.正常.系统
    3    3   0:2    D   NTFS       9 GB                主要.20GB.否.正常.
    4 ----   1    ----  -----  --------  ------------  Disk#1~0B/20GB~Dyn~MBR~联机~~(VMware, VMware Virtual S SCSI Disk Device)
    5    *   1:2    *            992 KB                动态数据.31KB.否
    6    0   1:1    L   FAT32     19 GB                动态数据.1024KB.是.正常.
    7 ----   2    ----  -----  --------  ------------  Disk#2~0B/1200GB~Bas~GPT~联机~~(VMware, VMware Virtual S SCSI Disk Device)
    8    8   2:1    *   NTFS     500 MB                恢复.1024KB.晕.正常.已隐藏
    9    9   2:2    *   FAT32    100 MB                系统.501MB.晕.正常.已隐藏
   10    *   2:3    *            128 MB                保留.601MB.晕
   11    4   2:4    H   NTFS      50 GB  GPT磁盘的第一个分区   主要.729MB.晕.正常.
   12    5   2:5    I   NTFS     200 GB  movie         主要.50GB.晕.正常.
   13    6   2:6    J   NTFS     200 GB                主要.250GB.晕.正常.
   14    7   2:7    K   NTFS     749 GB                主要.450GB.晕.正常.
---------------------------------------------------------------------------------------------------------
---当前焦点:Num=  ;  HD:P=

---主菜单------------------------------------------------------------------------------------------------
   L.装卸盘符              D.删除分区                  C.创建分区               F.格式化分区
   S.清除某硬盘所有分区    T.初始化某硬盘分区形式      V.活动分区
   R.刷新列表              X.退出
---------------------------------------------------------------------------------------------------------
---请选择一个操作:___
回复

使用道具 举报

发表于 2018-6-4 22:23:01 | 显示全部楼层
第二个磁盘是动态磁盘,显示出来了。

点评

多谢支持。多谢测试。  详情 回复 发表于 2018-6-4 22:27
回复

使用道具 举报

 楼主| 发表于 2018-6-4 22:27:13 | 显示全部楼层
freesoft00 发表于 2018-6-4 22:23
第二个磁盘是动态磁盘,显示出来了。

多谢支持。多谢测试。

点评

客气了。 多谢的是你,分享了不少好东西给大家。  详情 回复 发表于 2018-6-4 22:32
回复

使用道具 举报

发表于 2018-6-4 22:27:47 | 显示全部楼层

                          硬盘分区序列                                  DiskPart:D:_6.1.7601,脚本:D:
---------------------------------------------------------------------------------------------------------
  Num  Vol  HD:P   LTR   Fs       Size   Label         类型_偏移_活动_状态_信息
    1 ----   0    ----  -----  --------  ------------  Disk#0~0B/30GB~Bas~MBR~联机~~(VMware, VMware Virtual S SCSI Disk Device)
    2    8   0:1    C   NTFS      20 GB  系统盘符C         主要.1024KB.是.正常.系统
    3    9   0:2    D   NTFS       9 GB                主要.20GB.否.正常.
    4 ----   1    ----  -----  --------  ------------  Disk#1~9GB/20GB~Dyn~MBR~联机~~(VMware, VMware Virtual S SCSI Disk Device)
    5    *   1:1    *             19 GB                动态数据.31KB.否
    6 ----   2    ----  -----  --------  ------------  Disk#2~0B/1200GB~Dyn~GPT~联机~~(VMware, VMware Virtual S SCSI Disk Device)
    7    5   2:1    *   NTFS     500 MB                恢复.1024KB.晕.正常.已隐藏
    8    6   2:2    *   FAT32    100 MB                系统.501MB.晕.正常.已隐藏
    9    *   2:8    *           1024 KB                动态保留.601MB.晕
   10    *   2:3    *            127 MB                保留.602MB.晕
   11    3   2:4    H   NTFS    1199 GB  GPT磁盘的第一个分区   动态数据.729MB.晕.正常.
---------------------------------------------------------------------------------------------------------
---当前焦点:Num=  ;  HD:P=

---主菜单------------------------------------------------------------------------------------------------
   L.装卸盘符              D.删除分区                  C.创建分区               F.格式化分区
   S.清除某硬盘所有分区    T.初始化某硬盘分区形式      V.活动分区
   R.刷新列表              X.退出
---------------------------------------------------------------------------------------------------------
---请选择一个操作:___
回复

使用道具 举报

发表于 2018-6-4 22:30:25 | 显示全部楼层
第二和第三磁盘是动态。下面是第三磁盘详细信息。动态磁盘无法显示分区盘符。这个list part就是无法显示的那没有办法。动态磁盘是动态卷,只能在卷列表中显示盘符。

VMware, VMware Virtual S SCSI Disk Device
磁盘 ID: {FAEEC137-E424-414F-AD2E-24E6E2D3AC4E}
类型   : SAS
状态 : 联机
路径   : 0
目标 : 2
LUN ID : 0
位置路径 : PCIROOT(0)#PCI(1500)#PCI(0000)#SAS(P00T02L00)
当前只读状态: 否
只读: 否
启动磁盘: 否
页面文件磁盘: 否
休眠文件磁盘: 否
故障转储磁盘: 否
群集磁盘  : 否

  卷 ###      LTR  标签         FS     类型        大小     状态       信息
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  卷     0     K                NTFS   简单           749 GB  正常

  卷     1     J                NTFS   简单           200 GB  正常

  卷     2     I   movie        NTFS   简单           200 GB  正常

  卷     3     H   GPT磁盘的第一个分区  NTFS   简单            50 GB  正常

  卷     5                      NTFS   磁盘分区         500 MB  正常         已
隐藏
  卷     6                      FAT32  磁盘分区         100 MB  正常         已
隐藏
回复

使用道具 举报

发表于 2018-6-4 22:32:21 | 显示全部楼层
dos时代菜鸟 发表于 2018-6-4 22:27
多谢支持。多谢测试。

客气了。
多谢的是你,分享了不少好东西给大家。
回复

使用道具 举报

 楼主| 发表于 2018-6-4 23:58:37 | 显示全部楼层
本帖最后由 dos时代菜鸟 于 2018-6-5 00:03 编辑

可能是 动态磁盘 卷 无法 作为 part 进行操作,它可能被关联成了 其他分区的一部分 。
你看 那几个卷 的size 相加  的结果。


刚更新了下,支持 对 分区调整大小了。在1楼。
回复

使用道具 举报

 楼主| 发表于 2018-6-5 10:48:40 | 显示全部楼层
本帖最后由 dos时代菜鸟 于 2018-6-5 12:32 编辑

改进了一下 显示 行溢出 的问题,增加字符串 阉割 函数,如果字符串 长度超过指定值,就只显示其 前后两端 的部分内容。
增加了 一个 特别说明
改进 刷新 模块

更新 已经 放到一楼


唉,发现 阉割字符串 函数 搞复杂了,不用计算字符串长度 再 进行比较,可以直接 截取字符串 指定位置字符,如果该位置没有字符,就说明 字符串没有那么长。
不改了,先这么着吧。
回复

使用道具 举报

 楼主| 发表于 2018-6-5 13:48:31 | 显示全部楼层
可能是 太困了,居然 把一个  公用变量 给 “及时”的清理的。重新 更新下,Num 是 公用变量。

http://wuyou.net/forum.php?mod=a ... 8MTE5OHw0MDk0NTU%3D


先到这里吧,休息休息去了。
回复

使用道具 举报

 楼主| 发表于 2018-6-5 14:39:34 | 显示全部楼层
十分抱歉,今日太困,不能再玩了。
中午更新 几个版本 都有小问题,请 下载的 重新下载。 7.93 版本,在一楼。


回复

使用道具 举报

发表于 2018-6-5 17:46:10 | 显示全部楼层
QQ截图20180605174042.png
楼主提个小意见,就是第一列编号这个位置能不能改为只对磁盘进行编号排序呢?现在是磁盘和分区混在一起编号排序的

点评

创建分区,改变硬盘分区模式,都需要选择硬盘进行操作,硬盘分区删除以后,也要对硬盘资讯进行刷新,如果想手动刷新某个硬盘的信息,也需要选择硬盘,很多针对硬盘的操作都要求用户选择硬盘,硬盘没有编号,不行,会  详情 回复 发表于 2018-6-5 18:03
创新分区需要选硬盘  详情 回复 发表于 2018-6-5 17:58
回复

使用道具 举报

 楼主| 发表于 2018-6-5 17:58:28 来自手机 | 显示全部楼层
liangyi 发表于 2018-6-5 17:46
楼主提个小意见,就是第一列编号这个位置能不能改为只对磁盘进行编号排序呢?现在是磁盘和分区混在一起编 ...

创新分区需要选硬盘
回复

使用道具 举报

发表于 2018-6-5 18:02:04 | 显示全部楼层
太牛了,这几天自己快被分区的批处理搞疯了
回复

使用道具 举报

 楼主| 发表于 2018-6-5 18:03:34 来自手机 | 显示全部楼层
liangyi 发表于 2018-6-5 17:46
楼主提个小意见,就是第一列编号这个位置能不能改为只对磁盘进行编号排序呢?现在是磁盘和分区混在一起编 ...

创建分区,改变硬盘分区模式,都需要选择硬盘进行操作,硬盘分区删除以后,也要对硬盘资讯进行刷新,如果想手动刷新某个硬盘的信息,也需要选择硬盘,很多针对硬盘的操作都要求用户选择硬盘,硬盘没有编号,不行,会很麻烦。

点评

可能楼主误解我要表达的意思了,我是说能不能实现第一列只对硬盘编号显示,而第一列不显示分区编号  详情 回复 发表于 2018-6-5 18:11
回复

使用道具 举报

发表于 2018-6-5 18:11:17 | 显示全部楼层
dos时代菜鸟 发表于 2018-6-5 18:03
创建分区,改变硬盘分区模式,都需要选择硬盘进行操作,硬盘分区删除以后,也要对硬盘资讯进行刷新,如果 ...

可能楼主误解我要表达的意思了,我是说能不能实现第一列只对硬盘编号显示,而第一列不显示分区编号

点评

那有怎么选择分区呢?  详情 回复 发表于 2018-6-5 19:11
回复

使用道具 举报

 楼主| 发表于 2018-6-5 19:11:34 来自手机 | 显示全部楼层
liangyi 发表于 2018-6-5 18:11
可能楼主误解我要表达的意思了,我是说能不能实现第一列只对硬盘编号显示,而第一列不显示分区编号

那有怎么选择分区呢?

点评

[attachimg]372509[/attachimg] 其实我想表达的是,在7.97版的基础上能否这样调整,这样会不会辨识好点,编程小白+强迫症只能给这些意见,无法提出技术类的建议,楼主莫怪  详情 回复 发表于 2018-6-5 22:17
估计他的意思是第一列只显示盘符序号,其它都是空的。 第二列或者其它列再显示分区列表。 分开显示。 感觉不是太有必要。 因为有一列是磁盘+分区的列表  详情 回复 发表于 2018-6-5 19:18
回复

使用道具 举报

发表于 2018-6-5 19:18:30 | 显示全部楼层
dos时代菜鸟 发表于 2018-6-5 19:11
那有怎么选择分区呢?


估计他的意思是第一列只显示磁盘序号,其它都是空的。
第二列或者其它列再显示分区列表。
分开显示。
感觉不是太有必要。
因为有一列是磁盘+分区的列表

点评

嗯,这个要这样理解,确实有为了好看不要效率的嫌疑,因为脚本里面,以后可能还会加东西,涉及到对列表文本流中特定字符的定位,统一位置,统一格式有利于脚本编写和运行效率。  详情 回复 发表于 2018-6-5 19:28
回复

使用道具 举报

 楼主| 发表于 2018-6-5 19:28:34 来自手机 | 显示全部楼层
本帖最后由 dos时代菜鸟 于 2018-6-5 21:33 编辑
freesoft00 发表于 2018-6-5 19:18
估计他的意思是第一列只显示磁盘序号,其它都是空的。
第二列或者其它列再显示分区列表。
分开显示。 ...
已经修改 main_list 段,在不影响效率的前提下 ,改了一下 显示效果。


嗯,这个要这样理解,有臭美嫌疑啊。因为脚本里面,以后可能还会加东西,涉及到对列表文本流中特定字符的定位,统一位置,统一格式有利于脚本编写和运行效率。

点评

一个check.l 函数解决各种情况的用户录入选择,有利于提高效率。  详情 回复 发表于 2018-6-5 19:30
回复

使用道具 举报

 楼主| 发表于 2018-6-5 19:30:43 来自手机 | 显示全部楼层
本帖最后由 dos时代菜鸟 于 2018-6-5 21:35 编辑
dos时代菜鸟 发表于 2018-6-5 19:28
嗯,这个要这样理解,确实有为了好看不要效率的嫌疑,因为脚本里面,以后可能还会加东西,涉及到对列表文 ...


一个check.l 函数解决各种情况的用户录入选择,有利于提高效率。

可以考虑 用 main_list 段的程序 改变显示输出内容。而不改变  原始 列表文件。
回复

使用道具 举报

 楼主| 发表于 2018-6-5 21:08:05 | 显示全部楼层
本帖最后由 dos时代菜鸟 于 2018-6-5 21:46 编辑

看看,这样显示 行不行 ?

感觉 在输入 Num 的时候 能容易 检索一点儿吧。不知道 liangyi 是不是这个意思。我这几天睡得太晚,理解能力都降低了。

另外,如果 还是出现 有 行显示溢出 折行的现象,可以 在 主菜单 状态下 将 cmd 窗口最大化,然后在回车,就可以刷新显示。

捕获.PNG
DP_script-temp.zip (5.98 KB, 下载次数: 1)
回复

使用道具 举报

发表于 2018-6-5 22:17:09 | 显示全部楼层
本帖最后由 liangyi 于 2018-6-5 22:19 编辑
dos时代菜鸟 发表于 2018-6-5 19:11
那有怎么选择分区呢?


Snipaste_2018-06-05_22-18-25.png
Snipaste_2018-06-05_22-12-11.png

其实我想表达的是,在7.97版的基础上能否这样调整,这样会不会辨识好点,编程小白+强迫症只能给这些意见,无法提出技术类的建议,楼主莫怪

点评

hd:p 用于表示 分区 或 硬盘 的特征的,没有 冒号表示 是一个盘,有冒号 表示是 第几个硬盘的第几个分区。 是不能为 * 的 vol 是系统给的,如果为 * 说明 是 分区 却不能被 win 加载盘符 ltr 也是系统给的 ,  详情 回复 发表于 2018-6-5 22:34
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-3-29 14:28

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表