无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 12555|回复: 33
打印 上一主题 下一主题

关于用 diskpart 获取硬盘分区序列的 两个 脚本,用来明确第n硬盘第m分区及其对应...

  [复制链接]
跳转到指定楼层
1#
发表于 2018-5-31 11:14:57 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 dos时代菜鸟 于 2018-6-5 10:44 编辑

主打脚本:
DP_script_l.zip (3.64 KB, 下载次数: 30)
已经 另建贴

http://wuyou.net/forum.php?mod=v ... 55&fromuid=1198


其他脚本:
hd3.cmd.zip (3.98 KB, 下载次数: 63)
hd3.3.cmd 规避了 通过中文检索 ,但是 还是要到 有中文的行中指定 位置 找字符,明确分区是否 有 盘符。
hd3x.cmd 完全利用 中文字符进行检索,脚本效率有所提升,脚本体积也有所减少。
hd3y2.cmd 运行效率很慢,但是获取的信息就多了一些

这个是 用 hd3y2.cmd 的列表模式 改装的 交互式 装卸 分区盘符 的脚本样例。 l-d-drv7.41.zip (91.74 KB, 下载次数: 39)
考虑到 分区盘符变更后 重新生成 列表数据会 再一次 慢吞吞的完成,所以 增加了装卸操作完 自动刷新 功能。这样,生成一次 分区序列列表,以后 操作上,不会重复 全部分区的信息搜索,只是将新操作的分区的新信息更新到序列列表中,减少等待时间,增加了可用性。








评分

参与人数 1无忧币 +5 收起 理由
freesoft00 + 5

查看全部评分

2#
发表于 2018-5-31 11:31:20 | 只看该作者
3.3

3x

点评

多谢测试, 这是 pe 中的效果么? 看来 3.3 的思路 适应性更强一些,不过也出现了 文本流截取错位的情况。 我把 3.3 改了一点儿。也不知道 能 纠正不。  详情 回复 发表于 2018-5-31 11:56
回复

使用道具 举报

3#
 楼主| 发表于 2018-5-31 11:56:39 | 只看该作者
本帖最后由 dos时代菜鸟 于 2018-5-31 12:27 编辑

多谢测试,

这是 pe 中的效果么? 看来 3.3 的思路 适应性更强一些,不过也出现了 文本流截取错位的情况。

我把 3.3 改了一点儿。也不知道 能 纠正不。 hd3.test.zip (1.6 KB, 下载次数: 27)

能不能 运行 diskpart
select disk 2
detail disk
list part
看看 原始数据 列表是啥样子的呢?

点评

可以在一楼直接反一下批处理脚本,把原始数据作为日志输出为文件,发上来你好分析。 不过dos区人少,也许做也是白做。  详情 回复 发表于 2018-5-31 12:18
回复

使用道具 举报

4#
发表于 2018-5-31 12:18:02 | 只看该作者
dos时代菜鸟 发表于 2018-5-31 11:56
多谢测试,

这是 pe 中的效果么? 看来 3.3 的思路 适应性更强一些,不过也出现了 文本流截取错位的 ...

可以在一楼直接反一下批处理脚本,把原始数据作为日志输出为文件,发上来你好分析。
不过dos区人少,也许做也是白做。
回复

使用道具 举报

5#
发表于 2018-5-31 12:21:44 | 只看该作者
.找到 Vol#0
.找到 Vol#1
.找到 Vol#2
.找到 Vol#3
.找到 Vol#4
.找到 Vol#5
.找到 Vol#6
这些错误信息屏蔽掉吧。看着干净些。

点评

这不是错误信息,是 脚本运行过程中 用来 了解运行 进度用的,要不然,时间长了,还以为程序 死循环了呢。  详情 回复 发表于 2018-5-31 13:20
回复

使用道具 举报

6#
 楼主| 发表于 2018-5-31 12:30:35 | 只看该作者
hd3x.cmd 第15行 丢了一个 "~" 已经修正
hd3.3.cmd 也做了小的改动,不知道 效果真么样。
回复

使用道具 举报

7#
发表于 2018-5-31 12:36:02 | 只看该作者


两个都可以了
显示的时候序号补零吧

点评

已经 补零 在一楼  详情 回复 发表于 2018-5-31 13:00
回复

使用道具 举报

8#
 楼主| 发表于 2018-5-31 13:00:59 | 只看该作者
本帖最后由 dos时代菜鸟 于 2018-5-31 13:03 编辑
窄口牛 发表于 2018-5-31 12:36
两个都可以了
显示的时候序号补零吧


已经 补零 在一楼 ,补 空格是不是 比 补零 更好一些?

点评

补充零觉得不好。这个不是批量改名,为了整齐补零。磁盘卷就是那样的,就那些显示就可以。 实在不行就补充空格也行。  详情 回复 发表于 2018-5-31 13:35
回复

使用道具 举报

9#
 楼主| 发表于 2018-5-31 13:20:46 | 只看该作者
freesoft00 发表于 2018-5-31 12:21
.找到 Vol#0
.找到 Vol#1
.找到 Vol#2

这不是错误信息,是 脚本运行过程中 用来 了解运行 进度用的,要不然,时间长了,还以为程序 死循环了呢。
回复

使用道具 举报

10#
发表于 2018-5-31 13:21:10 来自手机 | 只看该作者
本帖最后由 窄口牛 于 2018-5-31 13:34 编辑

都行,无所谓吧
回复

使用道具 举报

11#
发表于 2018-5-31 13:35:40 | 只看该作者
dos时代菜鸟 发表于 2018-5-31 13:00
已经 补零 在一楼 ,补 空格是不是 比 补零 更好一些?

补充零觉得不好。这个不是批量改名,为了整齐补零。磁盘卷就是那样的,就那些显示就可以。
实在不行就补充空格也行。

点评

我 刚又 弄了个 可以获取 更多信息的 ,明显运行效率 降低了, 在一楼  详情 回复 发表于 2018-5-31 22:08
回复

使用道具 举报

12#
 楼主| 发表于 2018-5-31 22:08:34 | 只看该作者
本帖最后由 dos时代菜鸟 于 2018-5-31 22:47 编辑
freesoft00 发表于 2018-5-31 13:35
补充零觉得不好。这个不是批量改名,为了整齐补零。磁盘卷就是那样的,就那些显示就可以。
实在不行就补 ...

我 刚又 弄了个 可以获取 更多信息的 ,明显运行效率 降低了,探测下图 结构 几个硬盘 的分区结构 用时 20秒。
在一楼

点评

速度上差不多感觉。 前两个是走完 .找到 Vol#0 .找到 Vol#1 .找到 Vol#2 .找到 Vol#3 .找到 Vol#4 .找到 Vol#5 .找到 Vol#6 整体出现磁盘和分区列表。 第三个是一个一个出现磁盘分区列表。  详情 回复 发表于 2018-6-1 05:12
回复

使用道具 举报

13#
发表于 2018-6-1 05:12:14 | 只看该作者
dos时代菜鸟 发表于 2018-5-31 22:08
我 刚又 弄了个 可以获取 更多信息的 ,明显运行效率 降低了,探测下图 结构 几个硬盘 的分区结构 用时 2 ...

速度上差不多感觉。

前两个是走完
.找到 Vol#0
.找到 Vol#1
.找到 Vol#2
.找到 Vol#3
.找到 Vol#4
.找到 Vol#5
.找到 Vol#6
整体出现磁盘和分区列表。

第三个是一个一个出现磁盘分区列表。

整体时间上感觉差不多。

第三个确实信息更丰富一些。作为磁盘分区列表来说也比较好,好判断那个磁盘哪个分区。感觉这个挺好的。

点评

呵呵,就是 第三个 是用 中文 单词做 索引查询。 不过效果上看,还是可以的。 轻微改动 就可以 用到 批处理里面了。  详情 回复 发表于 2018-6-1 08:27
回复

使用道具 举报

14#
 楼主| 发表于 2018-6-1 08:27:17 | 只看该作者
freesoft00 发表于 2018-6-1 05:12
速度上差不多感觉。

前两个是走完

呵呵,就是 第三个 是用 中文 单词做 索引查询。

不过效果上看,还是可以的。
轻微改动 就可以 用到 批处理里面了。

点评

如果想有普遍的适应性,可以把关键词设置为英、简体、繁体。 批处理开始先查询当前系统的语言,然后使用不同的关键词作为搜索。 这样简体、繁体、英文系统都可以使用了。 国内普通的就这三种系统用户。  详情 回复 发表于 2018-6-1 09:51
回复

使用道具 举报

15#
发表于 2018-6-1 09:34:33 来自手机 | 只看该作者
我的defghijk是固定盘符,和卷标对应,新的或者别的系统会把e变d,fghijk依序,我需要一个按照卷标来重新挂载的批处理。

点评

你这个属于个性化应用,不带有普遍性。  详情 回复 发表于 2018-6-1 09:52
回复

使用道具 举报

16#
发表于 2018-6-1 09:51:32 | 只看该作者
dos时代菜鸟 发表于 2018-6-1 08:27
呵呵,就是 第三个 是用 中文 单词做 索引查询。

不过效果上看,还是可以的。

如果想有普遍的适应性,可以把关键词设置为英、简体、繁体。
批处理开始先查询当前系统的语言,然后使用不同的关键词作为搜索。
这样简体、繁体、英文系统都可以使用了。
国内普通的就这三种系统用户。
回复

使用道具 举报

17#
发表于 2018-6-1 09:52:25 | 只看该作者
窄口牛 发表于 2018-6-1 09:34
我的defghijk是固定盘符,和卷标对应,新的或者别的系统会把e变d,fghijk依序,我需要一个按照卷标来重新挂 ...

你这个属于个性化应用,不带有普遍性。
回复

使用道具 举报

18#
发表于 2018-6-1 10:06:17 | 只看该作者
好东西。good
回复

使用道具 举报

19#
 楼主| 发表于 2018-6-1 13:26:53 | 只看该作者
本帖最后由 dos时代菜鸟 于 2018-6-1 13:29 编辑

这个是 用 hd3y2.cmd 的列表模式 改装的 交互式 装卸 分区盘符 的脚本样例。 在1楼
考虑到 分区盘符变更后 重新生成 列表数据会 再一次 慢吞吞的完成,所以 增加了装卸操作完 自动刷新 功能。这样,生成一次 分区序列列表,以后 操作上,不会重复 全部分区的信息搜索,只是将新操作的分区的新信息更新到序列列表中,减少等待时间,增加了可用性。

有了这个 分区序列 列表,以后 就还可以 扩展功能,比如 分区的 删除,创建,调整大小,硬盘的挂起,分区的装卸 等等功能,可能没时间弄,不过 弄个这个,就算 抛砖吧,能不能引来玉 就不知道了。
回复

使用道具 举报

20#
发表于 2018-6-1 19:32:48 | 只看该作者
xuexixuexi
回复

使用道具 举报

21#
 楼主| 发表于 2018-6-2 00:21:09 | 只看该作者
改进 hd3y3.cmd 支持显示 硬盘分区结构是  mbr 还是 gpt ,显示 主分区 是否激活,修正 无盘符 卷 盘符位置 没有  * 的漏洞。

同时 更新了 盘符装卸 脚本,

具体下载 到 1楼

正在考虑 以这个 hd3y3.cmd 的分区序列 表 做界面,弄个  diskpart 的 外壳脚本。估计要 慢慢来了。

点评

硬盘分区序列 DiskPart=F:,6.1.7601 脚本:F: --------------------------------------------------------------------------------------------------- Dis  详情 回复 发表于 2018-6-2 10:12

评分

参与人数 1无忧币 +5 收起 理由
freesoft00 + 5 好,期待。diskpart常用的功能加上就可以了.

查看全部评分

回复

使用道具 举报

22#
发表于 2018-6-2 10:12:46 | 只看该作者
dos时代菜鸟 发表于 2018-6-2 00:21
改进 hd3y3.cmd 支持显示 硬盘分区结构是  mbr 还是 gpt ,显示 主分区 是否激活,修正 无盘符 卷 盘符位置 ...


                          硬盘分区序列 DiskPart=F:,6.1.7601                        脚本:F:
---------------------------------------------------------------------------------------------------

Disk#0 931GB MBR 基本 联机(WDC WD10ASD-238989 ATA Device)
  Num  Vol  HD:P   LTR   Fs       Size     Label        活动_类型_状态_信息_偏移
  ----  --- ----  ----- -------  -------- -----------   ------------------------
    1    0   0:1    *   NTFS    2000 MB                是_主要_正常_系统 1024KB
    2    1   0:2    D   NTFS      68 GB                否_主要_正常_ 2001MB
    3    2   0:3    E   NTFS      97 GB                否_主要_正常_ 70GB
    4    *   0:0    *            763 GB                否_扩展的_ 167GB
    5    3   0:4    F   NTFS     195 GB                否_逻辑_正常_页面文件 167GB
    6    4   0:5    G   NTFS     195 GB                否_逻辑_正常_ 363GB
    7    5   0:6    H   NTFS     177 GB                否_逻辑_正常_ 558GB
    8    6   0:7    I   NTFS      97 GB                否_逻辑_正常_ 736GB
    9    7   0:8    J   NTFS      97 GB                否_逻辑_正常_ 833GB

Disk#1 30GB MBR 动态 联机(Msft Virtual Disk SCSI Disk Device)
  Num  Vol  HD:P   LTR   Fs       Size   Label         活动_类型_状态_信息_偏移
  ----  --- ----  ----- -------  -------- -----------   ------------------------
   10    8   1:1    C   NTFS      29 GB                否_主要_正常_启动 1024KB
--------------------------------------------------------------------------------------------------
请输入待处理卷对应的序号(Num):1-12,r刷新,x退出:

点评

这个可以有 ,关键我不知道 这个信息 在 信息流的什么位置,我也没有 测试环境啊。就先不考虑了吧。  详情 回复 发表于 2018-6-4 13:16
回复

使用道具 举报

23#
发表于 2018-6-2 10:13:50 | 只看该作者
这样是不是更好?
磁盘信息添加了基本和动态。
回复

使用道具 举报

24#
发表于 2018-6-2 10:16:19 | 只看该作者

                          硬盘分区序列 DiskPart=F:,6.1.7601                        脚本:F:
---------------------------------------------------------------------------------------------------
  Num  Vol  HD:P   LTR   Fs       Size   Label         活动_类型_状态_信息_偏移
    1 ------   0  ----  -----  --------  ------------  ------------------------ Disk#0 931GB MBR 联机(WDC WD10ASD-238989 ATA Device)
    2    0   0:1    *   NTFS    2000 MB                是_主要_正常_系统 1024KB
    3    1   0:2    D   NTFS      68 GB                否_主要_正常_ 2001MB
    4    2   0:3    E   NTFS      97 GB                否_主要_正常_ 70GB
    5    *   0:0    *            763 GB                否_扩展的_ 167GB
    6    3   0:4    F   NTFS     195 GB                否_逻辑_正常_页面文件 167GB
    7    4   0:5    G   NTFS     195 GB                否_逻辑_正常_ 363GB
    8    5   0:6    H   NTFS     177 GB                否_逻辑_正常_ 558GB
    9    6   0:7    I   NTFS      97 GB                否_逻辑_正常_ 736GB
   10    7   0:8    J   NTFS      97 GB                否_逻辑_正常_ 833GB
   11 ------   1  ----  -----  --------  ------------  ------------------------ Disk#1 30GB MBR 联机(Msft Virtual Disk SCSI Disk Device)
   12    8   1:1    C   NTFS      29 GB                否_主要_正常_启动 1024KB
--------------------------------------------------------------------------------------------------
请输入待处理卷对应的序号(Num):1-12,r刷新,x退出:

输入卷序号。横线处就是磁盘信息对应的行也分配了序号。而真实的卷只有10个。

点评

那是为以后留的,比如要创建分区,就要选硬盘。  详情 回复 发表于 2018-6-4 00:11
回复

使用道具 举报

25#
发表于 2018-6-2 10:20:50 | 只看该作者
diskpart常用的操作。
创建分区,删除分区,全部删除分区。激活分区。分配和删除盘符
对vhd/vhdx虚拟磁盘的操作。创建,装载卸载,创建差异,合并差异,扩容,查看vhd文件信息。
回复

使用道具 举报

26#
 楼主| 发表于 2018-6-4 00:11:24 来自手机 | 只看该作者
freesoft00 发表于 2018-6-2 10:16
硬盘分区序列 DiskPart=F:,6.1.7601                        脚本:F:
------ ...

那是为以后留的,比如要创建分区,就要选硬盘。

点评

ok 知道了。 我说怎么磁盘要留出来行号。原来是预留对磁盘做操作的。 好。  详情 回复 发表于 2018-6-4 00:52
回复

使用道具 举报

27#
发表于 2018-6-4 00:52:35 | 只看该作者
dos时代菜鸟 发表于 2018-6-4 00:11
那是为以后留的,比如要创建分区,就要选硬盘。

ok
知道了。
我说怎么磁盘要留出来行号。原来是预留对磁盘做操作的。
好。
回复

使用道具 举报

28#
 楼主| 发表于 2018-6-4 13:16:09 | 只看该作者
freesoft00 发表于 2018-6-2 10:12
硬盘分区序列 DiskPart=F:,6.1.7601                        脚本:F:
---- ...

这个可以有 ,关键我不知道 这个信息 在  信息流的什么位置,我也没有 测试环境啊。就先不考虑了吧。

点评

DISKPART> list disk 磁盘 ### 状态 大小 可用 Dyn Gpt -------- ------------- ------- ------- --- --- * 磁盘 0 联机 931 GB 5120 KB 磁盘 1 联机  详情 回复 发表于 2018-6-4 16:06
回复

使用道具 举报

29#
发表于 2018-6-4 16:06:59 | 只看该作者
dos时代菜鸟 发表于 2018-6-4 13:16
这个可以有 ,关键我不知道 这个信息 在  信息流的什么位置,我也没有 测试环境啊。就先不考虑了吧。

DISKPART> list disk

  磁盘 ###  状态           大小     可用     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
* 磁盘 0    联机              931 GB  5120 KB
  磁盘 1    联机               30 GB  1024 KB

dyn那一列如果有*号就是动态,没有*号就是基本,gpt那一列有*号就是gpt分区的磁盘,没有*号就是mbr分区的磁盘。

点评

就是 要明确是第几个字符  详情 回复 发表于 2018-6-4 17:14
回复

使用道具 举报

30#
 楼主| 发表于 2018-6-4 17:14:54 | 只看该作者
freesoft00 发表于 2018-6-4 16:06
DISKPART> list disk

  磁盘 ###  状态           大小     可用     Dyn  Gpt

就是 要明确是第几个字符

点评

vmware,已经创建好的vmware,虚拟机设置,添加一个新的虚拟磁盘。 然后创建为动态磁盘。 list disk查看。 vhd虚拟磁盘无法转换为动态磁盘。或者直接启动pe然后对vmware中的虚拟磁盘做动态转换调整也行。 吃饭  详情 回复 发表于 2018-6-4 18:39
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-27 04:51

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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