MS Batch:检查驱动器是否正在使用中

时间:2012-07-15 21:48:57

标签: scripting batch-file dos

我需要检查是否正在使用驱动器(Z :)(例如,由应用程序使用,打开)。

我的批处理文件如下所示:

Mount Z:
wait 15 minutes
check if drive Z: is in use

IF NOT: unmount Z:
ELSE: wait 15 minutes
repeat..

这有什么命令吗?谢谢!

3 个答案:

答案 0 :(得分:2)

使用 IF EXIST IF NOT EXIST 组合:

:FindDrive
if exist Z:\nul goto Mounted
timeout /T 5
goto FindDrive
:Mounted

NUL是存在于每个文件夹中的“虚拟”文件。因此,如果存在c:\ anypath \ nul,则驱动器存在。

答案 1 :(得分:1)

@echo off
echo --------------------------------------------------
echo Checking if Y:\10.210.12.8\Rubicon Drive exist? Please wait...
echo IMPORTANT: DO NOT TOUCH THE COMPUTER DURING THIS PROCESS
echo --------------------------------------------------
Rem : Bill Kingsley

SET LOG=c:\Temp\logs

echo **********[%Date% - %Time%****************>%LOG%\Mapdrive.log

  IF EXIST Y:\  (
        echo. 
    echo The drive is already mapped. 
    echo ...Check if the mapp drive is accessible?....
        echo.
    dir y: >>%LOG%\Mapdrive.log
    if ERRORLEVEL 1 GOTO MAPDRIVE     
        GOTO SKIPPED
    ) ELSE (
      echo The drive has not yet been mapped.
      goto MAPDRIVE   
      )
goto end


:SKIPPED
echo.
Echo ******Mapped Drive Y is working Fine********
Echo.
Goto end

:MAPDRIVE
Net use Y: /d
net use Y: \\172.31.161.100\eBBS 
      dir Y: >> %LOG%\Mapdrive.log
  if errorlevel 0 goto SKIPPED
  if errorlevel 1 goto MAPDRIVE  
Goto end

:end 
echo ----------------------------------------
echo Maintenance check complete. check log in %LOG%
echo ----------------------------------------
rem exit

答案 2 :(得分:0)

如果您的电源选项设置正确如果没有使用,它将阻止图案旋转。

在Windows 7中,在您开始搜索电源选项时。在您当前的电源计划中点击更改计划选项。 然后点击更改高级电源选项并转到硬盘驱动器。

http://blog.laptopmag.com/windows-advanced-power-options-explained