[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络连接] [已解决]BAT怎样批量处理net use命令出来的共享连接?

例如:输入 net use
显示:
OK  H:  \\a\a
OK  J:   \\b\bb$
OK  k:   \\c\cc
已断开   \\d\d$
如果有很多,要批处理删除所有隐藏的共享(也就是后面带$共享)应该如何写代码。
求代码,不胜感激。
如果不行,只能改用VBS,VBS我还熟悉点。
先谢谢
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

回复 9# canyuexiaolang

碰到华为的这种共享连接会有问题:
OK                     \\lg-fs\1$ IT tools          Microsoft Windows Network
华为加$号的共享工具需要申请才能安装(当然浏览、复制是自由的)。

TOP

谢谢各位大侠。愿你们幸福

TOP

  1. @echo off
  2. for /f "skip=1 tokens=1* delims=\" %%i in ('net use ^| find "$"') do for /f "tokens=1 delims= " %%q in ("%%j") do echo net use \\%%q /del
  3. pause
复制代码
好了
1

评分人数

TOP

不要临时文件
  1. @echo off
  2. for /f "skip=1 delims=" %%i in (
  3. 'wmic path Win32_NetworkConnection where "name like '%%$'" get name'
  4. ) do for /f "delims=" %%a in ("%%i") do net use "%%~fa" /d /y
  5. pause
复制代码
1

评分人数

TOP

wmic的输出非常操蛋,所以用了临时文件
  1. @echo off
  2. wmic path Win32_NetworkConnection get name >#
  3. for /f "delims=" %%a in ('type # ^| findstr /rc:"\$ *$"') do (
  4.     net use "%%~fa" /d /y
  5. )
  6. del #
  7. pause
复制代码

TOP

回复 4# lxzzr

运行命令
>net use
会记录新的网络连接。


状态       本地        远程                      网络

-------------------------------------------------------------------------------
已断开       H:        \\192.168.100.3\d         Microsoft Windows Network
已断开       P:        \\192.168.100.8\p         Microsoft Windows Network
已断开       T:        \\192.168.100.3\c$        Microsoft Windows Network
已断开       U:        \\192.168.100.5\x         Microsoft Windows Network
已断开                 \\192.168.100.3\z          Microsoft Windows Network
已断开                 \\192.168.100.3\q$        Microsoft Windows Network
OK                     \\192.168.100.5\ipc$       Microsoft Windows Network
这只是示例,真正还有更多。
谢谢

TOP

运行命令
>net use
会记录新的网络连接。


状态       本地        远程                      网络

-------------------------------------------------------------------------------
已断开       H:        \\192.168.100.3\d         Microsoft Windows Network
已断开       P:        \\192.168.100.8\p         Microsoft Windows Network
已断开       T:        \\192.168.100.3\c$        Microsoft Windows Network
已断开       U:        \\192.168.100.5\x         Microsoft Windows Network
已断开                 \\192.168.100.3\z          Microsoft Windows Network
已断开                 \\192.168.100.3\q$        Microsoft Windows Network
OK                     \\192.168.100.5\ipc$       Microsoft Windows Network
这只是示例,真正还有更多。
谢谢

TOP

回复 3# ajie2009


能给出示例文本么?

TOP

好像没有那么简单,
OK  H:  \\a\a
OK  J:   \\b\bb$
OK  k:   \\c\cc
已断开   \\d\d$
这里中间有7个空格
而且有的第二列没有数据。
比如是: Ok         \\f\ipc$
谢谢二楼提供,不知道怎么再修改。

TOP

  1. for /f "skip=1 tokens=3 delims= " %%i in ('net use ^|find "$"') do net use %%i /del
复制代码
貌似是这么写

TOP

返回列表