无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 1467|回复: 38
打印 上一主题 下一主题

[求助] 有没有体积小便携的判断分区表类型为MBR/GPT的命令行工具,越小越好

  [复制链接]
跳转到指定楼层
1#
发表于 2023-11-26 17:50:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 学习学习学习 于 2023-11-26 18:54 编辑

有没有体积小便携的判断分区表类型为MBR/GPT的命令行工具,越小越好
目前论坛测试过的有

CxDir --- 返回数据分割符不明确,个别返回参数为空的时候不能准确获取到想到的参数)
BootMode --- 手动在cmd里面调用没问题,用软件调用返回参数为空(原因不详)

看看有没有其他更好的选择,感谢。
体积几十KB的最好,因为要用其他程序取参数,所以需要返回参数分割比较规整的,不需要多少功能,就单独一个查分区表类型的就行,给个盘符就可以直接返回分区表类型的最好。

2#
发表于 2023-11-26 17:55:21 | 只看该作者
可以到 系统中提取命令执行文件
回复

使用道具 举报

3#
发表于 2023-11-26 17:57:05 | 只看该作者
我记得一根葱有个批处理命令就行

点评

确实是一个简单批处理就行了  详情 回复 发表于 2023-11-26 22:39
批处理有点闹不明白  详情 回复 发表于 2023-11-26 18:29
回复

使用道具 举报

4#
发表于 2023-11-26 18:06:05 | 只看该作者
  • Crystal Disk Info
  • nwinfo,本坛wintoflash大神编写的开源软件
  • diskpart,系统自带命令行工具,自己写一个脚本
  • dpinfo,我基于diskpart编写的脚本,可以获得硬盘分区的各种数据
  • bootice应该也可以
  • 分区助手,支持命令行,体积稍大。
  • snapshot --show

点评

已采用 snapshot --show 感谢  发表于 2023-11-26 21:49
感谢,刚看了下,体积感觉有些大,个别参数也有些混乱,因为是需要加入到别的程序里面携带的,体积控制在百十KB的最好  详情 回复 发表于 2023-11-26 18:31

评分

参与人数 1无忧币 +1 收起 理由
zhczf + 1 赞一个!

查看全部评分

回复

使用道具 举报

5#
 楼主| 发表于 2023-11-26 18:29:51 | 只看该作者
bfgxp 发表于 2023-11-26 17:57
我记得一根葱有个批处理命令就行

批处理有点闹不明白
回复

使用道具 举报

6#
 楼主| 发表于 2023-11-26 18:31:23 | 只看该作者
nttwqz 发表于 2023-11-26 18:06
  • Crystal Disk Info
  • nwinfo,本坛wintoflash大神编写的开源软件
  • diskpart,系统自带命令行工具 ...

  • 感谢,刚看了下,体积感觉有些大,个别参数也有些混乱,因为是需要加入到别的程序里面携带的,体积控制在百十KB的最好

    点评

    百十K恐怕只有C、Rust等编程语言、可编译脚本类如AU3等可以做到,这要看论坛大神们的兴趣了,愿不愿意动手给你写几句。 其实snapshot、diskpart都行,随便写几行批处理提取下数据就好。  详情 回复 发表于 2023-11-26 19:32
    回复

    使用道具 举报

    7#
     楼主| 发表于 2023-11-26 18:34:04 | 只看该作者
    tanglf 发表于 2023-11-26 17:55
    可以到 系统中提取命令执行文件

    系统中的个别工具都需要附带其他关联文件的吧,不是纯粹的独立程序。
    回复

    使用道具 举报

    8#
    发表于 2023-11-26 19:32:55 来自手机 | 只看该作者
    学习学习学习 发表于 2023-11-26 18:31
    感谢,刚看了下,体积感觉有些大,个别参数也有些混乱,因为是需要加入到别的程序里面携带的,体积控制在 ...

    百十K恐怕只有C、Rust等编程语言、可编译脚本类如AU3等可以做到,这要看论坛大神们的兴趣了,愿不愿意动手给你写几句。

    其实snapshot、diskpart都行,随便写几行批处理提取下数据就好。

    点评

    是的,也是看论坛大神多,所以求助一下,现在是可以取出来,就是多少还有点不如意,像diskpart反应慢,发帖时候说的那两个参数混乱,个别参数回调空白等,所以想看看还有没有更好的选择。  详情 回复 发表于 2023-11-26 19:38
    回复

    使用道具 举报

    9#
     楼主| 发表于 2023-11-26 19:38:00 | 只看该作者
    nttwqz 发表于 2023-11-26 19:32
    百十K恐怕只有C、Rust等编程语言、可编译脚本类如AU3等可以做到,这要看论坛大神们的兴趣了,愿不愿意动 ...

    是的,也是看论坛大神多,所以求助一下,现在是可以取出来,就是多少还有点不如意,像diskpart反应慢,发帖时候说的那两个参数混乱,个别参数回调空白等,所以想看看还有没有更好的选择。
    回复

    使用道具 举报

    10#
    发表于 2023-11-26 20:12:00 | 只看该作者
    下面是几行基于snapshot64编写的示例。


    1. @echo off
    2. setlocal enabledelayedexpansion
    3. pushd %~dp0

    4. for /f "tokens=1-5*" %%a in ('snapshot64.exe --show') do (
    5.     if /i "%%c,%%e"=="Size,Vendor" (
    6.         set "var=%%b"
    7.         set "vars=%%d"
    8.         set "vars=!vars:.=!"
    9.         if /i not "!var:GPT=!"=="!var!" (
    10.             echo %%a        GPT        !vars!        %%f
    11.         ) else (
    12.             echo %%a        MBR        !vars!        %%f
    13.         )
    14.     )
    15. )

    16. pause
    17. exit
    复制代码


    点评

    这个是需要电脑里有snapshot64.exe这个软件吧,我这边直接运行提示 'snapshot64.exe' 不是内部或外部命令,也不是可运行的程序或批处理文件。 软件多大的呢。  详情 回复 发表于 2023-11-26 21:02
    回复

    使用道具 举报

    11#
    发表于 2023-11-26 20:13:15 | 只看该作者
    谢谢分享
    回复

    使用道具 举报

    12#
     楼主| 发表于 2023-11-26 21:02:21 | 只看该作者
    本帖最后由 学习学习学习 于 2023-11-26 21:12 编辑
    nttwqz 发表于 2023-11-26 20:12
    下面是几行基于snapshot64编写的示例。

    刚下了snapshot64.exe这个软件试了一下,软件确实不大,也有返回,但是这个参数不带分区盘符,还要另外确定C盘在哪块硬盘上,要是能直接取到像C:MBR
    D:GPT
    E:MBR
    这种格式的就好了,其他参数都无所谓。

    点评

    自己动手,丰衣足食! 这个完全可以实现,你自己研究一下。 如果是安装系统,我建议你直接使用WinNTSetup...  详情 回复 发表于 2023-11-26 21:20
    回复

    使用道具 举报

    13#
    发表于 2023-11-26 21:17:12 来自手机 | 只看该作者
    一般从mountvol里也能判断了
    回复

    使用道具 举报

    14#
    发表于 2023-11-26 21:20:54 | 只看该作者
    学习学习学习 发表于 2023-11-26 21:02
    刚下了snapshot64.exe这个软件试了一下,软件确实不大,也有返回,但是这个参数不带分区盘符,还要另外确 ...

    自己动手,丰衣足食!

    这个完全可以实现,你自己研究一下。

    如果是安装系统,我建议你直接使用WinNTSetup...

    点评

    之前没看懂批处理,刚研究了下,用snapshot64.exe软件 配合 snapshot64.exe --show这条命令已经搞定。软件大小还行,就这个了,特别感谢,另外也感谢另外各位的帮助。  详情 回复 发表于 2023-11-26 21:46
    回复

    使用道具 举报

    15#
     楼主| 发表于 2023-11-26 21:46:45 | 只看该作者
    nttwqz 发表于 2023-11-26 21:20
    自己动手,丰衣足食!

    这个完全可以实现,你自己研究一下。

    之前没看懂批处理,刚研究了下,用snapshot64.exe软件 配合 snapshot64.exe --show这条命令已经搞定。软件大小还行,就这个了,特别感谢,另外也感谢另外各位的帮助。
    回复

    使用道具 举报

    16#
    发表于 2023-11-26 21:53:25 | 只看该作者
    本帖最后由 JERRY爱电脑 于 2023-11-26 21:55 编辑

    用PECMD,下载链接论坛里有自己找。
    1. //获取信息,0改为磁盘序号,tmp为变量名可随便改
    2. PART list disk 0,tmp
    3. //从一堆信息中截取需要的
    4. RSTR tmp=5,%tmp%
    5. LSTR tmp=3,%tmp%
    6. //输出,以MESS为例
    7. MESS %tmp%
    复制代码


    PECMD执行后,输出:
    1. GPT
    复制代码
    当然如果是MBR磁盘就输出MBR。

    点评

    感谢,暂时先采用这个了snapshot --show 先进行着,以后遇到问题再说。  详情 回复 发表于 2023-11-26 21:57
    回复

    使用道具 举报

    17#
     楼主| 发表于 2023-11-26 21:57:29 | 只看该作者
    JERRY爱电脑 发表于 2023-11-26 21:53
    用PECMD,下载链接论坛里有自己找。PECMD执行后,输出:
    当然如果是MBR磁盘就输出MBR。

    感谢,暂时先采用这个了snapshot --show 先进行着,以后遇到问题再说。
    回复

    使用道具 举报

    18#
    发表于 2023-11-26 22:15:30 | 只看该作者
    键入 diskpart 并按 Enter 键,然后键入 list disk 以显示所有连接的驱动器。
      记下您要检查的磁盘号。 在磁盘详细信息中,GPT 列中如果有 *(星号)则表示分区方案为“GPT”,如果没有*则表示分区方案/样式为“MBR”。

    点评

    disk这个是最先接触到的,主要是初始化太慢,首次使用需要等待一会,而且不是单层命令,所以就没用。  详情 回复 发表于 2023-11-26 22:49

    评分

    参与人数 1无忧币 +5 收起 理由
    董大 + 5 赞一个!

    查看全部评分

    回复

    使用道具 举报

    19#
    发表于 2023-11-26 22:39:12 | 只看该作者
    bfgxp 发表于 2023-11-26 17:57
    我记得一根葱有个批处理命令就行

    确实是一个简单批处理就行了
    回复

    使用道具 举报

    20#
     楼主| 发表于 2023-11-26 22:49:17 | 只看该作者
    Bruce65 发表于 2023-11-26 22:15
    键入 diskpart 并按 Enter 键,然后键入 list disk 以显示所有连接的驱动器。
      记下您要检查的磁盘号。  ...

    disk这个是最先接触到的,主要是初始化太慢,首次使用需要等待一会,而且不是单层命令,所以就没用。
    回复

    使用道具 举报

    21#
    发表于 2023-11-27 08:37:16 | 只看该作者
    虽然diskpart慢一些,但是毕竟是系统自带,除了极度精简版都有。
    1. set boot=MBR
    2. for /f "tokens=8*" %%i in ('echo list disk ^|diskpart') do if "%%i"=="*" set boot=GPT
    3. echo 磁盘引导方式是:%boot%
    复制代码

    点评

    不错 谢谢分享  详情 回复 发表于 2023-11-27 08:43
    回复

    使用道具 举报

    22#
    发表于 2023-11-27 08:43:18 | 只看该作者
    9zhmke 发表于 2023-11-27 08:37
    虽然diskpart慢一些,但是毕竟是系统自带,除了极度精简版都有。

    不错 谢谢分享
    回复

    使用道具 举报

    23#
    发表于 2023-12-6 14:46:15 | 只看该作者
    用系统自带命令,不用第三方的才能满足你的需求吧
    回复

    使用道具 举报

    24#
    发表于 2024-2-7 12:31:23 | 只看该作者
    谢谢分享
    回复

    使用道具 举报

    25#
    发表于 2024-2-7 13:15:28 | 只看该作者
    也来学习学习,看看妙方
    回复

    使用道具 举报

    26#
    发表于 2024-2-7 15:00:16 | 只看该作者
    谢谢分享
    回复

    使用道具 举报

    27#
    发表于 2024-2-7 20:55:00 | 只看该作者
    WMIC PARTITION | findstr /i "GPT" &&IF NOT ERRORLEVEL 1 GOTO :GPT

    :GPT
    call %~dp0"KMS_VL_ALL_AIO.cmd" /s /w /a
    GOTO ENDALL
    回复

    使用道具 举报

    28#
    发表于 2024-4-16 02:24:32 来自手机 | 只看该作者
    谢谢分享
    回复

    使用道具 举报

    29#
    发表于 2024-4-17 18:14:34 | 只看该作者
    谢谢分享
    回复

    使用道具 举报

    30#
    发表于 2024-4-17 18:26:38 | 只看该作者
    进来学习
    回复

    使用道具 举报

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

    本版积分规则

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

    闽公网安备 35020302032614号

    GMT+8, 2024-5-1 01:11

    Powered by Discuz! X3.3

    © 2001-2017 Comsenz Inc.

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