DOS批处理获取系统状态(SN、硬盘序列号、补丁安装信息、网络连接痕迹、U盘使用记录)+自动上传数据到指定共享文件夹
分享一个我结合网上各种资料写的批处理,它能够获取电脑的S/N码、硬盘S/N码、补丁信息、网络信息、MAC地址、U盘使用记录(U盘型号序列号),根据需要还有上传数据到共享文件夹的功能。
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64@echo off :: 关闭回显 title kotori_poi color 0a :: 开启字体变绿 echo 计算机S/N码: > %~dp0systemcheck.txt wmic bios get serialnumber | find /v "SerialNumber" >> "%~dp0systemcheck.txt" :: 获取电脑S/N码 echo 计算机硬盘S/N码: >> %~dp0systemcheck.txt WMIC path win32_physicalmedia get serialnumber | find /v "SerialNumber" >> "%~dp0systemcheck.txt" :: 获取硬盘S/N码 for /f "tokens=1-2,4-5" %%i in ('echo list disk ^| diskpart ^| findstr /i GB') do ( echo %%i %%j 容量:%%k %%l >> %~dp0systemcheck.txt ) ::获取硬盘大小 systeminfo >> %~dp0systemcheck.txt :: 获取系统信息(安装的补丁) getmac /v >> %~dp0systemcheck.txt netstat -an >> %~dp0systemcheck.txt :: 获取网络信息、MAC地址 reg query HKLMSystemcurrentcontrolsetenumusbstor /s >%~dp0usbUsagerecord.txt :: 获取U盘注册表记录 ( echo ------------------- echo U盘使用记录: echo ------------------- ) >> %~dp0systemcheck.txt :: 以下操作都是筛选U盘序列号 ( findstr /c:"&0Device ParametersPartmgr" %~dp0usbUsagerecord.txt) > %~dp0usbUsagerecord1.txt @echo off&setlocal enabledelayedexpansion :: 定义变量延迟环境,关闭回显 :: 读取usb1.txt所有内容 for /f "eol=* tokens=*" %%i in (%~dp0usbUsagerecord1.txt) do ( :: 设置变量a为每行内容 set a=%%i :: 如果该行有HKEY_LOCAL_MACHINESystemcurrentcontrolsetenumusbstorDisk&Ven_,则将其改为型号: set "a=!a:HKEY_LOCAL_MACHINESystemcurrentcontrolsetenumusbstorDisk&Ven_= 型号:!" :: 如果该行有&0Device ParametersPartmgr,则将其改为 空格 set "a=!a:&0Device ParametersPartmgr= !" :: 如果该行有,则将其改为 序列号: set "a=!a:= 序列号:!" :: 如果该行有&Rev_PMAP,则将其改为 空格 set "a=!a:&Rev_PMAP= !" :: 如果该行有&Rev_1.00,则将其改为 空格 set "a=!a:&Rev_1.00= !" :: 如果该行有&Rev_2.00,则将其改为 空格 set "a=!a:&Rev_2.00= !" :: 如果该行有&Rev_3.00,则将其改为 空格 set "a=!a:&Rev_3.00= !" :: 如果该行有&Rev_,则将其改为 空格 set "a=!a:&Rev_= !" :: 把修改后的全部行存入%~dp0systemcheck.txt echo !a!>>%~dp0systemcheck.txt ) del %~dp0usbUsagerecord.txt del %~dp0usbUsagerecord1.txt start notepad "%~dp0systemcheck.txt" echo 结果在本程序所在目录--》systemcheck.txt pause
结果报告需要自动静默上传你的共享服务器的,在最后加上下面这行代码。
注:上传的TXT文件名是执行批处理主机的SN码(主机的序列号)。
复制代码
1
2
3
4
5
6
7
8
9
10net use \你的服务器IP共享文件夹 " " /user:"anonymous" @echo off setlocal enabledelayedexpansion for /f "delims=" %%a in (%~dp0systemcheck.txt) do ( set /a n+=1 if !n!==2 set a=%%a ) ::将SN码存入变量 for %%a in (%a%) do (copy /y %~dp0systemcheck.txt \你的服务器IP共享文件夹%%a.txt)
升级版,结果报告需要弹出窗口,然后选择上传你的共享服务器的,把上面的代码换成下面的代码。
注:上传的TXT文件名是执行批处理主机的SN码(主机的序列号)。
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26set b= echo Wsh.Echo MsgBox("是否上传结果到BGS?选是上传,选否不上传并退出 ",vbYesNo,"kotori_poi") >tmp.vbs for /f %%a in ('cscript tmp.vbs //nologo //e:vbscript') do set "b=%%a" if %b%==6 goto Yes if %b%==7 goto end del /q tmp.vbs exit :Yes net use \你的服务器IP共享文件夹 " " /user:"anonymous" @echo off setlocal enabledelayedexpansion for /f "delims=" %%a in (%~dp0systemcheck.txt) do ( set /a n+=1 if !n!==2 set a=%%a ) ::将SN码存入变量 for %%a in (%a%) do (copy /y %~dp0systemcheck.txt \你的服务器IP共享文件夹%%a.txt) Del /q tmp.vbs goto end :end del /q tmp.vbs exit
食用方法:
在桌面上新建一个TXT文本,选择复制代码进去,保存退出,然后改文件后缀为bat,右键–》以管理员身份运行。
然后在当前目录查看结果。
最后
以上就是聪慧魔镜最近收集整理的关于DOS批处理获取系统信息与U盘使用记录并上传数据的全部内容,更多相关DOS批处理获取系统信息与U盘使用记录并上传数据内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复