![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-12 00:52 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 求助:当前磁盘账户权限 |
| 可打印版本 919 / 4 |
| 第1楼 coldface | 发表于 2010-07-20 15:30 |
| 初级用户 发帖 70 积分 71 | |
|
求助:当前磁盘账户权限 大家好,
我有这样一个需求,查找当前某盘符下存在的账户及权限,如果有Users账户则删除,如果没有System账户权限,则添加,并赋予FULL control权限。 我只知道cacls 对指定盘/文件的添加或删除账户权限,但不知道如何获取当前盘符下的账户。麻烦给个样例或者提示。 谢谢! |
|
| 第2楼 coldface | 发表于 2010-07-21 09:12 |
| 初级用户 发帖 70 积分 71 | |
|
谁给个提示,Google没搜到
|
|
| 第3楼 coldface | 发表于 2010-07-22 14:17 |
| 初级用户 发帖 70 积分 71 | |
|
@echo off
echo 添加D的访问权限 cd/ cacls d: >>d:\1.txt for /f "tokens=1 delims=\,:" %%i in (d:\1.txt) do ( set str=%%i if "str"=="user" (cacls "d:" /P user:c /e) else (cacls "d:" /g user:c /e) ) 我自己找了写了个,存在问题。 if else好像只有一条生效,如果当前存在user账户的权限,那么修改权限的话就不成功。 [ Last edited by coldface on 2010-7-22 at 15:38 ] |
|
| 第4楼 coldface | 发表于 2010-07-22 16:34 |
| 初级用户 发帖 70 积分 71 | |
|
谁给解释下 谢谢!
|
|
| 第5楼 coldface | 发表于 2010-07-30 13:03 |
| 初级用户 发帖 70 积分 71 | |
|
下面是一个关于对F盘Users账户权限的判断及设定,如果Users账户不存在,则添加Users并设定为Control权限,如果Users权限存在,则判断其权限,如果不是COntrol权限则修正为Control。下面可以实现上述功能,但是会提示“系统文件找不到for”,求简化!
谢谢! @echo off echo F盘Users权限判断 set file=cacls f: set file2=for %%c in ("Users") do findstr /r /c:"\<%%~c\>" %file% set file3=for /f "tokens=2 delims=\" %%i in (%file2%) for /f "tokens=1 delims=:" %%a in (%file3%) do ( set str=%%a ) for /f "tokens=3 delims=)" %%b in (%file3%) do ( set str2=%%b ) if not "%str%"=="Users" ( goto Add if not "%str2%"=="C" ( goto Modify ) ) :Add cacls "f:" /g Users:c /e :Modify cacls "f:" /P Users:c /e |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |