使用EWFMGR获取写保护状态

时间:2017-01-09 09:38:14

标签: batch-file cmd windows-embedded

我需要使用ewfmgr获取C:驱动器的写保护状态,并在当前禁用时启用写保护。

据我所知,以下命令可以在CMD窗口中显示C:驱动器的状态

ewfmgr c:

但是如何将值存储在变量中并检查当前是否禁用了写入检测?

我需要以下(伪代码):

currentStatus = Somehow get the status of C:
if currentStatus = disable
ewfmgr -enable
shutdown -r

1 个答案:

答案 0 :(得分:0)

在PowerShell中,只需将ewfmgr C:的输出传递给Where-Object过滤器:

ewfmgr c: | Where-Object {
  $_.Trim() -match '^state\s+disabled$'
} | ForEach-Object {
  ewfmgr c: -enable
  shutdown -r
}

批量使用findstr循环中的for

@echo off
for /f %%a in ('ewfmgr c: ^| findstr /i /r /c:"state  *disabled"') do (
  ewfmgr c: -enable
  shutdown -r
)