中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-07 13:34
48,040 主题排行 / 350,125 发帖 / 今日 0 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助] 希望写个批处理用于文件服务器的权限检查
可打印版本  706 / 5
第1楼 bonne 发表于 2008-02-22 13:10
初级用户 发帖 9 积分 24
[求助] 希望写个批处理用于文件服务器的权限检查
各位帮忙看看.
Files Server的权限时间长了会很混乱,一个个看太麻烦.所以想写个批处理,用于将指定共享文件夹下的权限全部列表出来.
1.dir /ad /s 列出所有目录
2.for+findstr 找出所有目录
3.cacls 查询权限.
现在遇到的问题有两个
1.如果目录中有空格,那就跑不对了.如:c:\Documents and Settings 就只抓c:\Documents,那结果自然也就错了.
2.我希望输出结果格式化成CSV,有没有现成的命令可用?

新手,还请各位多教教我,谢谢!!!!
第2楼 bonne 发表于 2008-02-22 16:41
初级用户 发帖 9 积分 24
那位大哥帮帮我啊...

换个想法,我不再用tokens,delims来获取我想要的内容,有没有办法将一行去掉前面N个字符和后面几个字符?
之前好像看到过,不过我没找到
第3楼 abcd 发表于 2008-02-22 16:45
银牌会员 发帖 739 积分 1,436
路径空格问题,请加双引号
第4楼 abcd 发表于 2008-02-22 16:46
银牌会员 发帖 739 积分 1,436
去掉一行前N个字符和后N个字符,请用set截取
第5楼 bonne 发表于 2008-02-22 17:21
初级用户 发帖 9 积分 24
谢谢ABCD,不过那个空格加双引号我不知道怎么做.
我先用DIR得到
K:\ 的目录
2008-02-01 16:34 <DIR> bat
2008-02-21 15:36 <DIR> DOS
K:\bat 的目录
2008-02-01 16:34 <DIR> .
2008-02-01 16:34 <DIR> ..
2008-02-01 16:34 <DIR> 其它类
2008-02-01 16:34 <DIR> 系统类
2008-02-01 16:34 <DIR> 网络类
K:\bat\其它类 的目录
2008-02-01 16:34 <DIR> .
2008-02-01 16:34 <DIR> ..
2008-02-01 16:41 <DIR> 其它类
0 个文件 0 字节
这样的一个文本,然后用findstr选出下面几行
K:\ 的目录
K:\bat 的目录
K:\bat\其它类 的目录
如果这其中的一个目录中间有空格比如: K:\bat\其它类\1 2 的目录
那么我用for选段就会选成K:\bat\其它类\1,后面就都错了.

最后,再谢谢提示,正在试砍前剁后.
第6楼 abcd 发表于 2008-02-22 20:03
银牌会员 发帖 739 积分 1,436
用for也是可以的

for /f "delims=" %%i in ('dir /b /s k:') do (
echo %%i
)
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023