标题: [问题求助] powershell配合批处理获取指定所有者的文件和文件夹 [打印本页]
作者: 04175884 时间: 2021-3-31 14:23 标题: powershell配合批处理获取指定所有者的文件和文件夹
有两个命令
CMD中DIR /S /B可以遍历输出文件路径
POWERSHELL中 用(GET-ACL “文件路径").Owner 可以得到文件所有者
我的需求是:想得到某个目录中所有文件和文件夹的 文件所有者,符合我设定的所有者名称的,把文件完整路径输出到.txT文本
说白了,我想用DIR命令中得到的文件完整路径做为POWERSHELL中那个文件路径参数,然后查找输出结果中有没有我要的那个所有者名字,有的话,把那个完整路径重定向生成一个TXT,写到里面去
求高手写一个代码
作者: xczxczxcz 时间: 2021-3-31 15:07
ps 3.0+ 自行测试修改- ls "xxxx\方腊\" -r |?{(get-acl).owner.equals('宋江')}|%{$_.fullname}|sc '.\宋江.log' -force
复制代码
作者: 04175884 时间: 2021-3-31 16:43
回复 2# xczxczxcz
兄弟,我这样改对吗,好像没有效果啊
ls "D:\Public\RD(研發中心)\普通資料交換區\SZRD-Mechanical(機構課)\鄧梅花\" -r |?{(get-acl).owner.equals('miehuadeng')}|%{$_.fullname}|sc '.\miehuadeng.log' -force
作者: xczxczxcz 时间: 2021-3-31 16:54
- ls "xxxx\方腊\" -r |?{(get-acl).owner.equals("${env:ComputerName}\宋江")}|%{$_.fullname}|sc '.\宋江.log' -force
复制代码
所有者前要加域名。
作者: xczxczxcz 时间: 2021-3-31 17:16
回复 3# 04175884
计算机名可按自己的实际情况改,我写的是自动获取当前用户下的计算机名
作者: 04175884 时间: 2021-3-31 17:31
回复 5# xczxczxcz
兄弟,你写的是WINDOWS 下用的还是LINux下的,我WINDOWS下没用啊
作者: xczxczxcz 时间: 2021-3-31 17:44
回复 6# 04175884
这是 PS 不是 BAT 保存为 xxx.ps1 ;ansi编码,右键执行,不会用则论坛自查用法。
作者: 04175884 时间: 2021-4-1 08:47
回复 7# xczxczxcz
我是在powershell ise里面粘贴你的代码,运行没有任何提示和效果
作者: nwm310 时间: 2021-4-1 21:33
本帖最后由 nwm310 于 2021-4-1 22:15 编辑
- dir -r -Force | ?{$_.GetAccessControl().Owner -like '*\miehuadeng'} | %{$_.FullName} > .\out.txt
复制代码
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |