脚本实现 读取本地所有共享文件夹的 共享名和路径 wmic share get name,path
筛选出 共享名包括 web  pic  的 如共享名为 D_web 路径为 D:\web1
取消筛选出的 web pic的共享
重新共享 web pic 并给读写权限  如 共享名还是D_web 路径为 D:\web1   不变-------------------------------------------------------------
wmic /output:d:\share.txt share get name,path 输出到d:\share.txt 其实剪贴板更好可惜读不出来
wmic /output :clipboard share get name,path    输出到剪贴板@echo off & setlocal EnableDelayedExpansion    读取一行
set j=0
for /f "delims=""" %%i in (d:\share.txt) do (  赋值给a
set /a j+=1
set con!j!=%%i
call set a=%%con!j!%%
if "%a:pic=%"=="%a%" (echo %a%不包含pic) else echo %a%包含pic    筛选是否包含picif "%a:web=%"=="%a%" (echo %a%不包含web) else echo %a%包含web下一步是[a=D_web  D:\web1] 把a按空格拆开 b=D_web c=D:\web1
取消共享  net share %c% /delete
重新共享  net share %b%=%c%
给读写权限  cacls %c%  /e /p everyone:f

解决方案 »

  1.   

    wmic /output:d:\share.txt share get name,path  查询共享输出到d:\share.txt@echo off & setlocal EnableDelayedExpansionset j=0for /f "delims=""" %%i in (d:\share.txt) do (   把第一行字符串赋值给aset a=%%ifor /f "tokens=1 delims= " %%i in "a" do find "web" do   在a的第一部分找web字节
    set b=%%i                                                找到的话把第一部分赋值给b
    for /f "tokens=2 delims= " %%i in "a" do                 提取a的第二部分
    set c=%%i                                                赋值给c
    net share %c% /delete
    net share %b%=%c%
    cacls %c%  /e /p everyone:ffor /f "tokens=1 delims= " %%i in "a" do find "pic"  do 在a的第一部分找pic字节
    set b=%%i                                               找到的话把第一部分赋值给b
    for /f "tokens=2 delims= " %%i in "a"   do              提取a的第二部分
    set c=%%i                                               赋值给c
    net share %c% /delete
    net share %b%=%c%
    cacls %c%  /e /p everyone:f
    set /a j+1 loop