当前位置: 首页 > article >正文

局域网自动识别机器名和MAC并生成文件的命令

更新版本:添加了MAC 地址 确定了设备唯一性

V1.1 局域网自动识别机器名和MAC并生成文件的批处理命令

@echo off
setlocal enabledelayedexpansion

REM 设置输出文件
set outputFile=network_info.txt

REM 清空或创建输出文件
echo Scanning network from 192.168.20.1 to 192.168.20.254... > %outputFile%
echo ========================================== >> %outputFile%

REM 循环遍历IP地址范围
for /L %%i in (1,1,254) do (
    set ip=192.168.20.%%i
    echo Checking IP: !ip!
    
    REM 使用nbtstat获取机器名和MAC地址
    nbtstat -A !ip! > temp.txt
    
    REM 从temp.txt中提取机器名和MAC地址
    set machineName=
    set macAddress=
    
    for /f "tokens=2 delims= " %%a in ('findstr /i "UNIQUE" temp.txt') do (
        set machineName=%%a
    )
    
    for /f "tokens=1 delims= " %%a in ('findstr /i "MAC Address" temp.txt') do (
        set macAddress=%%a
    )
    
    REM 如果找到机器名和MAC地址,则写入输出文件
    if not "!machineName!"=="" (
        echo IP: !ip! >> %outputFile%
        echo Machine Name: !machineName! >> %outputFile%
        echo MAC Address: !macAddress! >> %outputFile%
        echo -------------------------- >> %outputFile%
    )
    
    REM 删除临时文件
    del temp.txt
)

echo Scan completed. Results saved to %outputFile%
pause

V1.0 局域网自动识别机器名并生成文件的批处理命令

@echo off
setlocal enabledelayedexpansion

REM 定义输出文件
set "outputFile=machines.txt"

REM 清空或创建输出文件
echo Scanning network from 192.168.20.1 to 192.168.20.254 > "%outputFile%"

REM 循环遍历IP地址
for /L %%i in (1,1,254) do (
    set "ip=192.168.20.%%i"
    echo Checking !ip!...
    
    REM 使用nbtstat命令获取机器名
    nbtstat -A !ip! >nul 2>&1 && (
        for /f "tokens=2 delims= " %%a in ('nbtstat -A !ip! ^| find "UNIQUE"') do (
            echo !ip! - %%a >> "%outputFile%"
        )
    ) || (
        echo !ip! - No response >> "%outputFile%"
    )
)

echo Scan complete. Results saved to %outputFile%.


http://www.kler.cn/a/567767.html

相关文章:

  • RabbitMQ系列(二)基本概念之Publisher
  • Git GitHub基础
  • Cocos Creator Shader入门实战(二):GLSL语法和OpenGL流程
  • 计算机毕业设计SpringBoot+Vue.js英语知识应用网站(源码+文档+PPT+讲解)
  • React状态管理进阶(四):从Redux到原子革命的终极指南
  • ElasticSearch 是如何实现分布式的?
  • JavaScript基础 -- 函数
  • Hue Load Balance配置
  • C++Primer学习(4.8位运算符)
  • FFT算法详解与STM32实战应用:从原理到代码实现
  • Electron一小时快速上手
  • 算法-数据结构(图)-弗洛伊德算法复现(Floyd)
  • Java数据结构第十五期:走进二叉树的奇妙世界(四)
  • 深入解析Java字符串:常量池、内存管理与StringBuilder、StringBuffer操作类指南
  • 安全传输,高效共享 —— 体验FileLink的跨网文件传输
  • ARM32汇编 -- align 指令说明及示例
  • 翻译: 深入分析LLMs like ChatGPT 二
  • An Efficient Anti-Interference Imaging Technology for Marine Radar 论文阅读
  • 泰康在线:以数字金融为基,跑赢互联网保险新时代
  • LeetCode 热题 100_寻找两个正序数组的中位数(68_4_困难_C++)(二分查找)(先合并再挑选中位数;划分数组(二分查找))