【问题标题】:How to find MB disk size and create list of variables如何查找 MB 磁盘大小并创建变量列表
【发布时间】:2013-08-08 09:10:20
【问题描述】:

我正在尝试使用 easus 命令行实用程序自动重新分区许多机器。
我可以制作批处理文件,但我认为我在玩 wmi 时已经超出了我的能力范围。

我的目标是找出 C 和 D 分区的大小(以 MB 为单位)并将它们放在一个 txt 文件中。
之后我想做一些基本的数学运算,从 D 中取出 60gb 给 C。C 目前约为 20gb,我想将其增加到 80gb。

类似:

Find C Size: Cs
Find D Size: Ds
Find D Free: Df

Df 中是否有足够的空间来将 60010mb 的大小调整为更小。

If yes than Ds - 60005mb = Ds1

Cs+60005 = Cs1
Ds-60005 = DS1 

运行 easus 命令 1(这会将 d 的大小调整为在 c 之后开始 60005mb,并在驱动器结束之前完成 5mb。

epmconsole.exe resize --disk=0 --volume=1 --start=Cs1 --size=Ds1 -r 

运行 easus 命令 2 运行 epmconsole.exe" 调整大小 --disk=0 --volume=0 --start=0 --size=80000 -r

(我猜测 10mb 将允许 easus 命令行正常运行,因为小的分区边界问题)

【问题讨论】:

  • Stack Overflow 是一个面向专业和爱好者程序员的问答网站。问题必须表明对要解决的问题的基本了解。告诉我们您尝试过什么,为什么它不起作用,以及它应该如何起作用。另见:Stack Overflow question checklist.

标签: batch-file command wmi


【解决方案1】:

获取驱动器的大小并将其放入文本文件(批处理脚本):

drive=c:
for /f "tokens=2 delims=:" %%n in ('fsutil volume diskfree %drive% ^| find /i "avail free bytes"') do echo %%n > your_text_file.txt

'set /a' 数学限制为 32 位(HDD 术语为 4GB),因此它不适合您的目的。最好用别的东西来做数学。 VBscript 可以做到。如果您必须使用批处理脚本,您可以使用“bc”downloadable at sourceforge 的 Windows 编译版本。谷歌“bc 语法”了解更多信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-27
    • 2013-11-01
    • 2019-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-13
    • 2012-04-11
    相关资源
    最近更新 更多