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

[系统相关] 求助批处理批量设置共享和权限的问题

本帖最后由 li_dongyun 于 2024-10-30 17:40 编辑

有一个用户表“名单.csv”,内容为:Windows本地用户名,部门名
user1,bumen1
user2,bumen1
user3,bumen2
user4,bumen2
。。。
在当前目录gx创建部门名的目录,再在部门目录下创建用户目录,结构类似为:gx\bumen1\user1
用户文件夹设置隐藏的共享,用户和管理员组有完全权限,ntfs权限也是,其他用户不继承,全部删掉
设置共享和ntfs权限的命令怎么也搞不定,不知道错在哪里,请高手指点一下,谢谢!
代码如下:
  1. setlocal enabledelayedexpansion
  2. for /f "usebackq tokens=1,2 delims=," %%a in (名单.csv) do (
  3.     net user %%a 123 /add
  4.     wmic useraccount where name="%%a" set PasswordExpires=False
  5.     set "sharedFolderPath=%~dp0%%c\%%a"
  6. if not exist "!sharedFolderPath!" md "%%a"
  7. net share "%%a$"="!sharedFolderPath!" /grant:%%a,FULL /grant:administrators,full  /users:1      这条不运行,但在根目录可以运行
  8. icacls "!sharedFolderPath!" /grant Administrators:(oi)(ci)(F) /grant %%a:(oi)(ci)(F) /inheritance:r /T /C    这条不运行,但是单独用指定目录和用户名可以,批量就不行
  9. )
  10. endlocal
复制代码

请各位老师指点一下,谢谢

TOP

回复 1# li_dongyun
  1. @echo off
  2. --------------------------------------------------------------------------------------------------------------
  3. --------------------------------------------------------------------------------------------------------------
  4. 1pause
  5. cls
  6. echo ----------------------------------------------
  7. echo 输入共享路径,按回车继续。比如d:\win11
  8. echo ----------------------------------------------
  9. set 共享名=asus-b660-d
  10. set 共享路径=D:\
  11. --------------------------------------------------------------------------------------------------------------
  12. --------------------------------------------------------------------------------------------------------------
  13. 1pause
  14. cls
  15. net share %共享名% /delete /y
  16. pause
  17. cls
  18. md %共享路径%
  19. net share %共享名%=%共享路径% /grant:everyone,full
  20. echo y|cacls %共享路径% /T /G everyone:F
  21. pause
  22. cls
  23. net share
  24. pause
  25. cls
  26. net share /help
  27. pause
  28. cls
  29. net share %共享名% /delete /y
  30. pause
  31. cls
  32. net share
  33. pause
  34. cls
复制代码
win11系统,局域网内作为共享主机,测试成功。

TOP

回复 3# ygqiang


    谢谢回复,我想实现的是批量设置

TOP

各位老师帮忙看看,自己顶一下

TOP

返回列表