标题: [网络连接] [已解决]BAT怎样批量处理net use命令出来的共享连接? [打印本页]
作者: ajie2009 时间: 2012-6-8 19:41 标题: [已解决]BAT怎样批量处理net use命令出来的共享连接?
例如:输入 net use
显示:
OK H: \\a\a
OK J: \\b\bb$
OK k: \\c\cc
已断开 \\d\d$
如果有很多,要批处理删除所有隐藏的共享(也就是后面带$共享)应该如何写代码。
求代码,不胜感激。
如果不行,只能改用VBS,VBS我还熟悉点。
先谢谢
作者: canyuexiaolang 时间: 2012-6-8 19:54
- for /f "skip=1 tokens=3 delims= " %%i in ('net use ^|find "$"') do net use %%i /del
复制代码
貌似是这么写
作者: ajie2009 时间: 2012-6-8 20:13
好像没有那么简单,
OK H: \\a\a
OK J: \\b\bb$
OK k: \\c\cc
已断开 \\d\d$
这里中间有7个空格
而且有的第二列没有数据。
比如是: Ok \\f\ipc$
谢谢二楼提供,不知道怎么再修改。
作者: lxzzr 时间: 2012-6-8 20:18
回复 3# ajie2009
能给出示例文本么?
作者: ajie2009 时间: 2012-6-8 20:23
运行命令
>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
这只是示例,真正还有更多。
谢谢
作者: ajie2009 时间: 2012-6-8 20:39
回复 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
这只是示例,真正还有更多。
谢谢
作者: powerbat 时间: 2012-6-8 22:03
wmic的输出非常操蛋,所以用了临时文件- @echo off
- wmic path Win32_NetworkConnection get name >#
- for /f "delims=" %%a in ('type # ^| findstr /rc:"\$ *$"') do (
- net use "%%~fa" /d /y
- )
- del #
- pause
复制代码
作者: powerbat 时间: 2012-6-8 22:13
不要临时文件- @echo off
- for /f "skip=1 delims=" %%i in (
- 'wmic path Win32_NetworkConnection where "name like '%%$'" get name'
- ) do for /f "delims=" %%a in ("%%i") do net use "%%~fa" /d /y
- pause
复制代码
作者: canyuexiaolang 时间: 2012-6-9 08:45
- @echo off
- 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
- pause
复制代码
好了
作者: ajie2009 时间: 2012-6-12 05:21
谢谢各位大侠。愿你们幸福
作者: powerbat 时间: 2012-6-13 16:57
回复 9# canyuexiaolang
碰到华为的这种共享连接会有问题:
OK \\lg-fs\1$ IT tools Microsoft Windows Network
华为加$号的共享工具需要申请才能安装(当然浏览、复制是自由的)。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |