[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理diskpart能区分不同容量的硬盘吗?

请问下,DISKPART 能区分不同容量的硬盘吗?
就是说 我电脑里面有20个盘,其中有10个是4T以上的盘 我要单独选出来 用CLEAN 命令 清除数据。

回复 12# Batcher


    是我的问题。我是放在VHDX 盘里面运行的。在命令行下也是一直提示另一个文件在使用此程序。放到其他本地盘里面运行就正常了。

TOP

本帖最后由 conan2095 于 2021-9-23 10:24 编辑

回复 12# Batcher


    谢谢大哥 能输出到文本

为啥在命令行里面能输出到文本,在批处理里面输出不了。

TOP

wmic 可以用的话
  1. wmic DISKDRIVE get size,index
复制代码

TOP

用wmic
  1. wmic DISKDRIVE get size,index
复制代码

TOP

回复 10# conan2095
  1. echo list disk | diskpart >0.txt
复制代码
执行这个命令之后有啥报错信息吗?
执行的结果没有写入0.txt吗?
以管理员身份打开CMD窗口再执行命令能否成功呢?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 10# conan2095
  1. for /f "tokens=2,4 delims= " %%i in ('"(echo list disk)|diskpart|findstr /i "gb""') do (
  2. if %%j gtr 3726 (
  3. (echo sel disk %%i
  4. echo clean)>>1.txt
  5. )
  6. )
  7. echo exit>>1.txt
  8. diskpart /s 1.txt
复制代码

TOP

有没有这样的思路,把list disk 输出到文本文档里面,然后在 文本里面比较大小

然后在用 diskpart /s 1.txt 执行
但是我试了 list disk 输出不到文本

TOP

回复 8# conan2095
  1. for /f "tokens=2,4 delims= " %%i in ('"(echo list disk)|diskpart|findstr /i "gb""') do (
  2. if %%j gtr 3726 (
  3. (echo sel disk %%i
  4. echo clean)|diskpart
  5. )
  6. )
复制代码

TOP

本帖最后由 conan2095 于 2021-9-23 10:01 编辑

回复 2# idwma


    大哥echo (sel disk 0&clean)|diskpart
这条命令执行不了哦 。


(echo sel disk 3&echo clean)|diskpart
这样可以执行

TOP

回复 5# idwma


    不太确切。应该是以字符串的方式逐位比较。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

谢谢各位 我研究下

TOP

尴尬
加了引号只对开头的一个数有较
if "5" GTR "5096" echo TRUE

TOP

回复 2# idwma


    加上双引号是字符串比较,不是数值比较。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

if "5" GTR "4096" echo TRUE

TOP

返回列表