读取netstat输出以安装打印机

时间:2014-05-14 21:20:09

标签: port netstat

背后的故事很长,但这就是我要做的事情:

我正在开发一个远程虚拟机实现,根据客户端设备的位置,将通过批处理文件(无VBS或PowerShell)安装相应的网络打印机。

所以,我的想法是:

  1. 运行netstat -an -p tcp以查找包含端口49404的行。
  2. 过滤该输出以获取将要的第二个IP地址 返回
  3. 将该IP的最后一个八位字节替换为“250”(打印机IP 对于每个网络)
  4. 在新计算的IP上运行nslookup以获取 该打印机的名称
  5. 按名称安装打印机。
  6. 这是我到目前为止所做的事情,从网络上的旧帖子拼凑而成(我还没有完成第4或第5步):

    @echo off
    netstat -p tcp -an | FIND "49404" > %temp%\TEMPIP.txt
    FOR /F "tokens=2 delims=:" %%a in (%temp%\TEMPIP.txt) do set IP=%%a
    del %temp%\TEMPIP.txt
    set IP=%IP:~9%
    set "ip=%IP%"
    for /f "tokens=1-4 delims=. " %%a in ("%ip%") do (
    set octetA=%%a
    set octetB=%%b
    set octetC=%%c
    set octetD=232
    )
    

    我确信有更干净或更有效的方法来执行这项任务,所以我希望你们都能指出我正确的方向。谢谢!

0 个答案:

没有答案