一键获取软硬件配置及管理员组

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介:
作为公司的IT运维,经常要面对集团各种名头的稽查,对我们 工作量造成相当大的提高。公司的IT政策不允许使用非法软件、USB口要关闭、电脑使用者不能有管理员权限等等。于是每一个最底层的工作人员一天到晚围着用户的电脑跑,查找硬件配置,软件信息等,为了提高工作效率,于是就写了以下批处理,减轻自己的工作负担。
   功能说明:
  1.扫描机器硬件配置
  2.获取电脑的网络配置
  3.扫描机器软件安装列表
  4.查看Administrators组和Power Users组内的用户
  5.电脑的USB存储端口开关情况
  6.电脑的共享信息
  7.扫描结果自动上传
  扫描的結果以程序画面显示(重要內容)及转出以电脑名称命名的文本文件(详细內容)。并将此文本文件自动上传到共享文件夹中。
   以下是批处理的代码:
@echo off
color 57
title HardSoft Viewer
mode con cols=67 lines=42
setlocal  ENABLEDELAYEDEXPANSION
echo Prepare For View ...
del /f "%TEMP%\temp.txt" 2>nul
dxdiag /t %TEMP%\temp.txt
del /f "%COMPUTERNAME%.txt" 2>nul
echo Start Hardware Viewer ...
echo System Information: >>%COMPUTERNAME%.txt
:system
rem This must 30s
if EXIST "%TEMP%\temp.txt" (
for /f "tokens=1,2,* delims=:" %%a in ('findstr /c:" Machine name:" /c:" Operating System:" /c:" System Model:" /c:" Processor:" /c:"  Memory:" /c:" Card name:" /c:"Display Memory:" "%TEMP%\temp.txt"') do (
set /a tee+=1
if !tee! == 1 echo       Computer Name = %%b>>%COMPUTERNAME%.txt
if !tee! == 2 echo       OS       Type = %%b>>%COMPUTERNAME%.txt
if !tee! == 3 echo       System  Model = %%b>>%COMPUTERNAME%.txt
if !tee! == 4 echo       CPU     Model = %%b>>%COMPUTERNAME%.txt
if !tee! == 5 echo       RAM      Size = %%b>>%COMPUTERNAME%.txt
if !tee! == 6 echo.>>%COMPUTERNAME%.txt
if !tee! == 6 echo DisplayCard : >>%COMPUTERNAME%.txt
if !tee! == 6 echo       Display  Card = %%b>>%COMPUTERNAME%.txt
if !tee! == 7 echo       DisplayMemory = %%b>>%COMPUTERNAME%.txt
)   ) else (
ping /n 2 127.1>nul
goto system
)
set tee=0
echo.>>%COMPUTERNAME%.txt
echo Mother Board:>>%COMPUTERNAME%.txt
for /f "tokens=1,* delims==" %%a in ('wmic BASEBOARD get Manufacturer^,Product^,Version^,SerialNumber /value') do (
set /a tee+=1
if "!tee!" == "3" echo       Manufacturer     = %%b>>%COMPUTERNAME%.txt
if "!tee!" == "4" echo       MotherBoard Model= %%b>>%COMPUTERNAME%.txt
)
set tee=0
)
echo.>>%COMPUTERNAME%.txt
echo Hard Disk: >>%COMPUTERNAME%.txt
for /f "skip=2 tokens=*" %%a in ('wmic DISKDRIVE get model ^,size /value') do (
echo.      %%a>>%COMPUTERNAME%.txt
)
set tee=0
echo.>>%COMPUTERNAME%.txt
echo Network Card:>>%COMPUTERNAME%.txt
for /f "tokens=2* delims==:" %%a in ('ipconfig/all^|find /i "Description" ^| findstr /v "Microsoft" ^| findstr /v "Tunneling"') do (
set  name=%%a
echo      NetCard Model = %%a>>%COMPUTERNAME%.txt
)
for /f "tokens=2* delims==:" %%a in ('ipconfig/all^|find /i "Physical Address" ^| findstr /v "00-00-00-00"') do (
set  name=%%a
echo      MAC Address = %%a>>%COMPUTERNAME%.txt
)
for /f "tokens=2* delims==:" %%a in ('ipconfig/all^|find /i "描述" ^| findstr /v "Microsoft" ^| findstr /v "Tunneling"') do (
set  name=%%a
echo      NetCard Model = %%a>>%COMPUTERNAME%.txt
)
for /f "tokens=2* delims==:" %%a in ('ipconfig/all^|find /i "物理地址" ^| findstr /v "00-00-00-00"') do (
set  name=%%a
echo      MAC Address = %%a>>%COMPUTERNAME%.txt
)
ver|find /i " windows xp">nul 2>nul&&goto xp||goto win7
:xp
for /f "tokens=2* delims==:" %%a in ('ipconfig/all^|find /i "IP Address"') do (
set  name=%%a
echo      IP Address = %%a>>%COMPUTERNAME%.txt
)
echo Start Software Viewer For XP...
echo.>>%COMPUTERNAME%.txt
echo Software Information:>>%COMPUTERNAME%.txt
for /f "tokens=7 delims=\" %%i in ('reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" ^| findstr /v "KB" 2^>nul') do (
for /f "skip=4 tokens=2*" %%a in ('reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%%i" /v DisplayName 2^>nul' ) do (
echo %%b>>%COMPUTERNAME%.txt
)
)
for /f "tokens=2 delims=\" %%x in ('reg query HKU') do (
for /f "tokens=8 delims=\" %%a in ('reg query "HKU\%%x\Software\Microsoft\Windows\CurrentVersion\Uninstall" 2^>nul') do (
for /f "skip=4 tokens=2*" %%i in ('reg query "HKU\%%x\Software\Microsoft\Windows\CurrentVersion\Uninstall\%%a"  /v "DisplayName" 2^>nul') do (
echo %%j>>%COMPUTERNAME%.txt
)
)
)
echo.>>%COMPUTERNAME%.txt
if exist %windir%\system32\CCM\CcmExec.exe echo "SMS Client has been installed,please uninstall"
if exist %windir%\system32\CCM\CcmExec.exe echo "SMS Client has been installed,please uninstall">>%COMPUTERNAME%.txt
echo ==================================================================
echo USB Information:
echo.>>%COMPUTERNAME%.txt
echo USB Information:>>%COMPUTERNAME%.txt
for /f "skip=4 tokens=2*" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Services\usbstor" /v "start" 2^>nul' ) do (
if "%%b"=="0x4" echo     USB is Close
if "%%b"=="0x3" echo     USB is Open,Please Tag It.
if "%%b"=="0x4" echo     USB is Close>>%COMPUTERNAME%.txt
if "%%b"=="0x3" echo     USB is Open,Please Tag It.>>%COMPUTERNAME%.txt
)
goto last
:win7
for /f "tokens=2* delims==:" %%a in ('ipconfig/all^|find /i "IPV4"') do (
set  name=%%a
echo      IP Address = %%a>>%COMPUTERNAME%.txt
)
echo Start Software Viewer For Win7/8 ...
rem for 32 win7
echo.>>%COMPUTERNAME%.txt
echo Software Information:>>%COMPUTERNAME%.txt
for /f "tokens=7 delims=\" %%i in ('reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" ^| findstr /v "KB" 2^>nul ') do (
for /f "skip=2 tokens=3* delims= " %%a in ('reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%%i" /v DisplayName 2^>nul') do (
echo %%a %%b>>%COMPUTERNAME%.txt
)
)
for /f "tokens=8 delims=\" %%i in ('reg query "HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall" 2^>nul ^| findstr /v "KB" 2^>nul ') do (
for /f "skip=2 tokens=3* delims= " %%a in ('reg query "HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\%%i" /v DisplayName 2^>nul') do (
echo %%a %%b>>%COMPUTERNAME%.txt
)
)
for /f "tokens=2 delims=\" %%x in ('reg query HKU') do (
for /f "tokens=8 delims=\" %%a in ('reg query "HKU\%%x\Software\Microsoft\Windows\CurrentVersion\Uninstall" 2^>nul') do (
for /f "skip=2 tokens=2*" %%i in ('reg query "HKU\%%x\Software\Microsoft\Windows\CurrentVersion\Uninstall\%%a"  /v "DisplayName" 2^>nul') do (
echo %%j>>%COMPUTERNAME%.txt
)
)
)
for /f "tokens=2 delims=\" %%x in ('reg query HKU') do (
for /f "tokens=9 delims=\" %%a in ('reg query "HKU\%%x\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall" 2^>nul') do (
for /f "skip=2 tokens=2*" %%i in ('reg query "HKU\%%x\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\%%a"  /v "DisplayName" 2^>nul') do (
echo %%j>>%COMPUTERNAME%.txt
)
)
)
echo ==================================================================
echo USB Information:
echo.>>%COMPUTERNAME%.txt
echo USB Information:>>%COMPUTERNAME%.txt
for /f "skip=2 tokens=2*" %%a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Services\usbstor" /v "start" 2^>nul' ) do (
if "%%b"=="0x4" echo     USB is Close
if "%%b"=="0x3" echo     USB is Open,Please Tag It.
if "%%b"=="0x4" echo     USB is Close>>%COMPUTERNAME%.txt
if "%%b"=="0x3" echo     USB is Open,Please Tag It.>>%COMPUTERNAME%.txt
)
:last
echo ==================================================================
echo Admin Users:
echo.>>%COMPUTERNAME%.txt
echo Admin Users:>>%COMPUTERNAME%.txt
for /f "skip=6 tokens=*" %%i in ('net localgroup Administrators ^| findstr /v "㏑" ^| findstr /v "命" ^| findstr /v "command"') do (
echo       %%i
echo       %%i>>%COMPUTERNAME%.txt
)
echo Power Users:
echo.>>%COMPUTERNAME%.txt
echo Power Users:>>%COMPUTERNAME%.txt
for /f "skip=6 tokens=*" %%i in ('net localgroup "Power Users" ^| findstr /v "㏑" ^| findstr /v "命" ^| findstr /v "command"') do (
echo       %%i
echo       %%i>>%COMPUTERNAME%.txt
)
echo ==================================================================
echo FileShare Information:
echo.>>%COMPUTERNAME%.txt
echo FileShare Information:>>%COMPUTERNAME%.txt
for /f "skip=4 tokens=*" %%i in ('net share 2^>nul ^| findstr /v "㏑" ^| findstr /v "命" ^| findstr /v "command"' ) do (
echo  %%i
echo  %%i>>%COMPUTERNAME%.txt
)
echo =========================Viewer Over==============================
net use \\192.168.1.1 password /user:username 1>nul 2>nul
copy %COMPUTERNAME%.txt \\192.168.1.1\HardFile$\
net use \\192.168.1.1\IPC$ /del 1>nul 2>nul
pause
start %COMPUTERNAME%.txt
 現在來查看下掃描結果XP/WIN8對比
  以及產生的掃描結果
System Information:
Computer Name =  C0300022B068
OS       Type =  Windows 8.1 专业版 64-bit (6.3, Build 9600) (9600.winblue_gdr.131030-1505)
System  Model =  System Product Name
CPU     Model =  Pentium(R) Dual-Core  CPU      E5500  @ 2.80GHz (2 CPUs), ~2.8GHz
RAM      Size =  4096MB RAM
DisplayCard =
Display  Card =  Microsoft 基本显示适配器
DisplayMemory =  256 MB
Mother Board:
Manufacturer     = ASUSTeK Computer INC.
MotherBoard Model= P5KPL-AM
Hard Disk:
Model=ST3500418AS ATA Device
Size=500038694400
Network Card:
NetCard Model =  Realtek PCIe FE Family Controller
MAC Address =  00-23-54-0A-31-A9
IP Address =  172.17.44.103(首选)
Software Information:
谷歌拼音输入法 2.7
7-Zip 9.30 (x64 edition)
Windows Live MIME IFilter
Java 8 Update 20 (64-bit)
Microsoft Visual C++ 2008 Redistributable - x64 9.0.30729.4148
Java SE Development Kit 8 Update 20 (64-bit)
Microsoft Application Error Reporting
PDF-Viewer
Microsoft Visual C++ 2005 Redistributable (x64)
MSVCRT110_amd64
VIA 平台设备管理员
Mozilla Maintenance Service
Notepad++
Windows Live 软件包
Windows Live UX Platform
Windows Live Writer
Windows Live UX Platform Language Pack
Junk Mail filter update
Radmin Viewer 3.5
Windows Live Photo Common
Microsoft Visual C++ 2008 Redistributable - x86 9.0.30729.4148
Platform
Windows Live 软件包
Windows Live Writer
Windows Live Writer
微软设备健康助手
Windows Live Communications Platform
Java Auto Updater
Windows Live Mail
Windows Live Writer Resources
LibreOffice 4.3.0.4
Windows Live Installer
Windows Live Writer
Windows Live Writer Resources
Windows Live UX Platform Language Pack
Windows Live 程式集
Microsoft Visual C++ 2005 Redistributable
Photo Common
MSVCRT
MSVCRT110
Microsoft Visual C++ 2008 Redistributable - x86 9.0.21022
Adobe Reader 8 - Chinese Traditional
Windows Live PIMT Platform
Windows Live Mail
Windows Live Mail
Windows Live SOXE
MSVCRT_amd64
Windows Live SOXE Definitions
Photo Common
D3DX10
Microsoft WSE 3.0 Runtime
Microsoft Visual C++ 2008 Redistributable - x86 9.0.21022.218
Microsoft WSE 2.0 SP3 Runtime
USB Information:
USB is Open,Please Tag It.
Admin Users:
Administrator
Luke
Power Users:
FileShare Information:
ADMIN$       C:\Windows                      远程管理
C$           C:\                             默认共享
IPC$                                         远程 IPC
D$           D:\                             默认共享
E$           E:\                             默认共享
F$           F:\                             默认共享
HardFile$    D:\HardFile
cd_rom       D:\cd_rom
HardSoftViewer
D:\HardSoftViewer
HardwareViewer 20140923
D:\HardwareViewer 20140923
public       D:\public

最新内容请见作者的GitHub页:http://qaseven.github.io/
相关文章
|
12月前
|
监控 网络协议 Nacos
Nacos:构建微服务架构的基石
Nacos:构建微服务架构的基石
534 2
|
6月前
|
开发者 容器
鸿蒙5开发宝藏案例分享---一多开发实例(股票类)
本文分享了一个HarmonyOS开发的股票应用案例,展示“一次开发多端部署”的实践技巧。通过9个核心页面,详解三大技术亮点:分栏布局(单双栏自动切换)、组件自适应(宫格卡片智能分列)和动态布局重构(栅格系统+断点监听)。同时提供避坑指南与实用组件推荐,帮助开发者高效掌握自适应布局精髓,提升开发效率。
|
6月前
|
存储 弹性计算 Linux
安装Docker
常见操作系统安装docker步骤
1102 15
|
缓存 安全 网络协议
HTTP中如何正确使用Via
【10月更文挑战第20天】Via`首部字段记录报文途中每个代理或网关信息,助于诊断问题和避免循环。
|
10月前
|
数据可视化 搜索推荐 数据管理
数字化教育系统管理平台:为教务部门量身定制的可视化大屏
在教育行业数字化转型背景下,教务部门面临管理效率低下、数据分散、决策支持不足等挑战。为此,我们推出数字化教育系统可视化大屏,整合招生和学务数据,提供直观的实时分析与可视化展示,助力高效管理和科学决策。平台支持红色(招生)和绿色(学务)主题,涵盖高校数据管理、信息一览、定制化地图展示等应用场景,显著提升数据处理效率和用户体验。
|
算法 应用服务中间件 nginx
NGINX下的红黑树源码详解(附 流程图和GIF)(1)
之前博主稍微讲解了下红黑树的原理,那么在这篇博客博主想要把红黑树讲的更加的透彻,以便于更多的人了解红黑树 (本博客会更加详细的介绍之前的博客没介绍到的,所以各位看官不同再回去翻看博主之前那篇红黑树的原理讲解了。)
264 3
|
Ubuntu Shell Docker
在Docker环境下如何“安装”Ubuntu
【8月更文挑战第18天】在Docker环境中“安装”Ubuntu实际上是指利用Ubuntu镜像构建容器。
1271 1
|
搜索推荐 算法 Python
用伪代码描述冒泡排序算法及其实现
用伪代码描述冒泡排序算法及其实现
1245 0
|
存储 算法 数据库
带你学习DM数据库的基本操作
带你学习DM数据库的基本操作
1873 0