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

[问题求助] powershell配合批处理获取指定所有者的文件和文件夹

有两个命令
CMD中DIR /S /B可以遍历输出文件路径
POWERSHELL中 用(GET-ACL “文件路径").Owner  可以得到文件所有者

我的需求是:想得到某个目录中所有文件和文件夹的 文件所有者,符合我设定的所有者名称的,把文件完整路径输出到.txT文本

说白了,我想用DIR命令中得到的文件完整路径做为POWERSHELL中那个文件路径参数,然后查找输出结果中有没有我要的那个所有者名字,有的话,把那个完整路径重定向生成一个TXT,写到里面去

求高手写一个代码

ps 3.0+  自行测试修改
  1. ls "xxxx\方腊\" -r |?{(get-acl).owner.equals('宋江')}|%{$_.fullname}|sc '.\宋江.log' -force
复制代码
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

回复 2# xczxczxcz

兄弟,我这样改对吗,好像没有效果啊
ls "D:\Public\RD(研發中心)\普通資料交換區\SZRD-Mechanical(機構課)\鄧梅花\" -r |?{(get-acl).owner.equals('miehuadeng')}|%{$_.fullname}|sc '.\miehuadeng.log' -force

TOP

  1. ls "xxxx\方腊\" -r |?{(get-acl).owner.equals("${env:ComputerName}\宋江")}|%{$_.fullname}|sc '.\宋江.log' -force
复制代码
所有者前要加域名。
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

回复 3# 04175884


    计算机名可按自己的实际情况改,我写的是自动获取当前用户下的计算机名
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

回复 5# xczxczxcz

兄弟,你写的是WINDOWS 下用的还是LINux下的,我WINDOWS下没用啊

TOP

回复 6# 04175884


    这是 PS  不是 BAT 保存为 xxx.ps1 ;ansi编码,右键执行,不会用则论坛自查用法。
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

回复 7# xczxczxcz


    我是在powershell ise里面粘贴你的代码,运行没有任何提示和效果

TOP

本帖最后由 nwm310 于 2021-4-1 22:15 编辑
  1. dir -r -Force | ?{$_.GetAccessControl().Owner -like '*\miehuadeng'} | %{$_.FullName} > .\out.txt
复制代码

TOP

返回列表