|
|
本帖最后由 cb02356828 于 2012-6-12 20:30 编辑
- @echo off&title 磁盘插拔监视程序 by Mr.He
- setlocal enabledelayedexpansion
- echo,
- echo, 监视磁盘变动情况,如有U盘、光盘、移动硬盘等连接电脑或拔出,本程序就
- echo, 将其盘符和卷标记录下来,通过记录可以大致了解什么人在你的电脑上插过。
- echo,&echo, 记录实时保存在桌面的 plugmon.log 文件,可用记事本打开。
- echo,&echo, Created by Mr.He Email: cb02356828@163.com update: 2012-06-10
- echo,&echo, 以下是实时监视记录:&echo,-----------------------------
- rem 初始化设置
- :ini
- set lgf="%userprofile%\desktop\plugmon.log"
- set lg=echo^>^>%lgf%
- set disks=G H I J K L M N O P Q R S T U V W X Y Z
- set p=p
- set n=n
- set l=l
- rem 初始化磁盘存在与否的判断
- :start
- for %%e in (%disks%) do (
- if exist "%%e:" (
- rem 获取磁盘卷标
- for /f "tokens=3,*delims= " %%a in ('vol %%e: 2^>nul') do (
- set %%e%l%=%%b
- )
- set %%e%p%=1
- ) else (
- set %%e%p%=0
- )
- set %%e%p%=!%%e%p%!
- )
- rem 循环监视各磁盘存在与否,并写入变量,与之前的状态对比得出其变化状态
- :mon
- for %%i in (%disks%) do (
- if exist "%%i:" (
- set %%i%n%=1
- if !%%i%p%! equ 0 (
- for /f "tokens=3,*delims= " %%c in ('vol %%i: 2^>nul') do (
- set %%i%l%=%%d
- )
- echo At %time% Loaded Drive [%%i:\^] !%%i%l%!.
- %lg% At %date% %time% Loaded Drive [%%i:\^] !%%i%l%!.
- )
- ) else (
- set %%i%n%=0
- if !%%i%p%! equ 1 (
- echo At %time% Unloaded Drive [%%i:\^] !%%i%l%!.
- %lg% At %date% %time% Unloaded Drive [%%i:\^] !%%i%l%!.
- )
- )
- set %%i%p%=!%%i%n%!
- )
- timeout /t 3 >nul&goto mon
复制代码 |
|