小编Ann*_*ema的帖子

使用 Windows PowerShell 查找和删除特定所有者的文件

由于勒索软件攻击(没什么大不了的,都是从备份中恢复的)我想清理网络共享上的目录和子目录,攻击发生在那里创建了大量乱码文件。它们都归在受感染 PC 上工作的用户所有。

到目前为止,我最好的尝试是这样的:

Get-ChildItem Z:\ -Recurse | get-acl | where {($_.Owner -eq "DOMAIN\username")} | foreach { $_.Delete()}
Run Code Online (Sandbox Code Playgroud)

但它不起作用,因为get-acl不支持$_.Delete()


$或者$_是不是我的问题,我认为。我确实有一些其他可能的命令。它们运行。

就像这里的这个:

Get-ChildItem -filter "~*.*" -path Z:\ -recurse | where {($_.LastWriteTime -lt (get-date).AddDays(-7))} | foreach { $_.Delete()}
Run Code Online (Sandbox Code Playgroud)

几天以来,我一直使用它来删除通过从备份中恢复文件而创建的文件,而这些文件是由未受恶意软件影响的备份文件创建的。我只是恢复了整个共享

但我会试一试。

关于您的其他提示,我必须解释一下,运行勒索软件的用户帐户在该网络驱动器上没有自行创建的文件。该用户的读取权限就足够了。

不幸的是,此共享对每个人都有更改访问权限。那是在早期,我们都与勒索软件没有太多关系。当然,等主要工作完成后,我会更改这些访问权限。

所以请我需要建议以删除此特殊帐户拥有的文件。

powershell filter deleting owner

2
推荐指数
1
解决办法
1210
查看次数

标签 统计

deleting ×1

filter ×1

owner ×1

powershell ×1