Board logo

标题: [文本处理] 请教批处理如何获取局域网共享打印机共享名? [打印本页]

作者: wzfwx    时间: 2022-1-19 11:19     标题: 请教批处理如何获取局域网共享打印机共享名?

共享名      类型   使用为  注释

---------------------------------------
HP PRINTER  Print          HPPRINTER
LBP2900  Print               Canon LBP2900

共享名我是通过net view \\机器名查询的
打印机有很多,不止一台机器,有些共享名中间有一两个空格,有些又没有,怎么通过批处理提取一下共享名呢?
作者: Batcher    时间: 2022-1-19 11:57

回复 1# wzfwx
  1. net view \\机器名 > 1.txt
复制代码
请把命令生成的文本文件上传到网盘我试试
作者: wzfwx    时间: 2022-1-19 14:54

在 \\im-wang-d 的共享资源



共享名      类型   使用为  注释        

-------------------------------------------------------------------------------
HP PRINTER  Print          HP PRINTER  
MYSCAN      Disk                       
命令成功完成。
作者: wzfwx    时间: 2022-1-19 14:56

回复 2# Batcher
上面就是所有内容,我只想获取到HP PRINTER,这个值
还有其他主机连接了打印机,但是有些打印机名字中间又没有空格
作者: Batcher    时间: 2022-1-19 15:54

回复 4# wzfwx


    我需要使用2楼那个方法生成的原始文件做测试,而不是你复制粘贴到网页的内容。
作者: wzfwx    时间: 2022-1-19 16:36

回复 5# Batcher
链接: https://pan.baidu.com/s/1VYWXnfcmD4Cf_7o0-JgkyQ 提取码: 2yax
谢谢您
作者: Batcher    时间: 2022-1-19 18:21

回复 6# wzfwx
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in ('net view \\机器名 ^| findstr "Print"') do (
  4.     set "line=%%i"
  5.     set "line=!line:  =$!"
  6.     for /f "delims=$" %%j in ("!line!") do (
  7.         set "PrintName=%%j"
  8.         echo,!PrintName!
  9.     )
  10. )
  11. pause
复制代码

作者: qkhhha    时间: 2022-1-19 18:34

大哥 帮我处理下 http://www.bathome.net/viewthrea ... %26amp%3Btypeid%3D6
作者: wzfwx    时间: 2022-1-20 16:26

回复 7# Batcher
感谢大神,非常非常好用,帮了我大忙!!!拜谢!!!




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2