我知道如何检查特定程序是否正在winrar
运行可能指示驱动器的使用情况d:
,但有没有更好的方法来确定驱动器是否相对空闲(通过Batch
或其他方法,从 调用Batch file
)以开始移动大文件(在后台运行的批处理文件中),因为同时移动操作似乎会损坏我的计算机,我猜可能是由于 100% 的硬盘使用率。对驱动器进行了碎片整理,但仍然如此。
答案1
一个简单的方法可以在一行中完成,最好的部分是你不需要计时。让系统来担心这个。
我们希望使用开始带有 /LOW 优先级标志的命令。如果您输入,start /?
您会发现 /LOW 标志实际上意味着 IDLE。
请注意,磁盘 I/O 才是真正的问题(而不是处理器负载),但这仍然会产生很大的影响。
就像是:
start /Low "Copying files on idle..." cmd.exe /c copy "c:\gigantic_nerd.file" "d:\archive_folder"
- 我们看到
start
将进程优先级设置为空闲 - 我们看到
start
将标题设置为“复制文件..” - 然后
start
使用 /c 标志启动 cmd.exe,该标志告诉 cmd.exe 在完成后退出。 - “copy blah blah blah”之后的所有内容均由现在以空闲优先级运行的 cmd.exe 执行。
请记住,您还可以使用start
它来限制允许使用的处理器。
请注意:这是一项很好的练习,但对于大多数人来说,29 美元的 256GB SSD 硬盘就可以实现这一点全部走开。即使是14美元128GB SSD 硬盘将改变您的生活。如果更换大型硬盘,这是不可能的。
另请注意:OP 有一块巨大的 HDD(24TB),而且它不会很快被 SSD 取代。