![连接磁盘卷时运行计划任务](https://linux22.com/image/1495007/%E8%BF%9E%E6%8E%A5%E7%A3%81%E7%9B%98%E5%8D%B7%E6%97%B6%E8%BF%90%E8%A1%8C%E8%AE%A1%E5%88%92%E4%BB%BB%E5%8A%A1.png)
我有这个 Windows 10 虚拟环境,我经常需要将原始磁盘卷连接到虚拟机,然后我需要diskpart
在其上运行以初始化它。我想我需要 Window Task Scheduler 来完成这项工作。因此,步骤如下:
- 该卷由虚拟机管理工具附加。
- 计划任务发现该卷已连接,然后运行diskpart脚本。
这diskpart
部分很简单,但我如何知道卷是否已附加?我认为这涉及使用系统事件作为任务触发器,但我应该查看哪些事件?
Diskpart 逻辑
select disk 1
attribute disk clear readonly
online disk
convert mbr
create part primary
format quick
assign letter d:
exit
答案1
这
diskpart
部分很简单,但我如何知道卷是否已附加?您的 DiskPart 逻辑
select disk 1 attribute disk clear readonly online disk convert mbr create part primary format quick assign letter d: exit
您可以使用批处理脚本逻辑轻松确认卷是否存在(ECHO
下面是简单的命令示例):
IF EXIST D:\ ECHO SUCCESS
, 或者IF NOT EXIST D:\ ECHO UNSUCCESSFUL
。
根据您的需要,随后相应地调整您的逻辑,通过确认此“D”驱动器磁盘分区是否存在,因为您通过 diskpart 为其分配了“D”驱动器号。
一般示例:
IF [NOT] EXIST D:\ <SOME LOGIC BASED ON IF LOGIC RESULT>
因此它必须先检测到它,然后执行 diskpart
下面的脚本每 30 秒检查一次“D”驱动器,并且仅在找到后运行逻辑然后结束。
@ECHO ON
:Exist_Or_Not
PING -n 30 127.0.0.1 > nil
IF NOT EXIST D:\ GOTO :Exist_Or_Not
IF EXIST D:\ GOTO :Your_DiskPart_Logic
:Your_DiskPart_Logic
select disk 1
attribute disk clear readonly
online disk
convert mbr
create part primary
format quick
assign letter d:
exit