如何解决如何使用 VersionInfo 属性过滤 .exe 文件?
我应该首先说,我喜欢用 PowerShell 解决问题,但我的 PowerShell 技能严重缺乏。因此,如果您确实回复了,请尽可能简单:D
Microsoft Teams 安装在 AppData
。多个用户登录不同的 PC,留下旧版本的 Teams,我们现在需要清理这些旧版本,而不会影响当前登录的用户和较新版本的 Teams。
因此,我一直沿着VersionInfo.FiLeverson
的路线来解决这个问题。我尝试过的各种方法,我可以做到这么远,然后就再也没有了。我可以列出 FullName
和 FiLeversion
,但我不知道如何省略我们想单独留下的较新版本。
我发现这个方法与我写的相比看起来非常干净,它让我进入了与我的脚本相同的阶段;
cd G:\test\users\ Get-ChildItem -Filter wire*.exe -Recurse |
ForEach-Object {
try {
$_ | Add-Member NoteProperty FiLeversion ($_.VersionInfo.FiLeversion)
$_ | Add-Member NoteProperty AssemblyVersion (
[Reflection.AssemblyName]::GetAssemblyName($_.FullName).Version
)
} catch {}
$_
} | Select-Object FullName,FiLeversion -outvariable info
从她看来,我的想法与 $info.where{$_.FiLeversion -lt '3.4.4.0'}
类似。
在测试这类事情时,例如,运行服务,我可以看到它是多么容易。所以我不确定我是如何做到这一点的,如果有人能为我指出正确的方向,我将不胜感激。
解决方法
您可以为当前未登录的所有用户删除 C:\users\<USERNAME>\Microsoft\teams
文件夹。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。