【问题标题】:powershell script to get part of folder name with if statement使用 if 语句获取部分文件夹名称的 powershell 脚本
【发布时间】:2018-04-08 06:48:28
【问题描述】:

您好,从 acrobat 开始,我们不再支持 x 版本 id 喜欢为我们的监控系统制作脚本。

目前我有:

$FullFolderPath = 'C:\Program Files (x86)\Adobe Reader DC';
$FolderName = (Split-Path $FullFolderPath -Leaf).ToString();
$DashIndex = $FolderName.IndexOf('Re');
$FolderNameFromDashToEnd = $FolderName.SubString($DashIndex);


$ADDC = "Reader DC"

if (($ADDC) -notcontains $FolderNameFromDashToEnd){
Write-Host "End of Support $adobeversion"
Exit 1010
}
else {
Write-Host "Adobe $FolderNameFromDashToEnd"
Exit 0
}

但我两者都有 C:\Program Files (x86)\Adobe\Acrobat 2017 和 C:\Program Files (x86)\Adobe\Acrobat Reader DC。

有多个版本,所以我需要排除除 reader dc 文件夹之外的所有版本。 有谁知道这方面的好方法吗?

预期:如果文件夹 acrobat* excist 但不是 acrobat reader dc,则:

我还尝试了几个选项:

$acrobatversion = Get-Childitem "C:\Program Files (x86)\Adobe\Acrobat*" | Select-Object @{Name="Name"; Expression = {$_.Name}}
$acrobatversion

但它只是征用了两个 acrobat 文件夹

【问题讨论】:

标签: powershell


【解决方案1】:

您可以查看Uninstall registry keys 以获取有关阅读器安装的信息。然后使用Where-Object 过滤,这样您就只安装了 Classic Track。

$ReaderClassicTrackInstalls = @((Get-ChildItem HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\), (Get-ChildItem HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\)) |
    ForEach-Object {
        Get-ItemProperty ($_ -replace 'HKEY_LOCAL_MACHINE', 'HKLM:') |
            Where-Object {$_.displayname -like "Adobe Acrobat Reader*" -and $_.displayname -notlike '*DC'}
    }
$ReaderClassicTrackInstalls |
    Select-Object InstallLocation, DisplayVersion

【讨论】:

  • 感谢您与我分享此内容,你们能做到这一点真是太棒了,我觉得很愚蠢,也许是时候进行培训了但是当 Acrobat Reader 2017 文件夹存在时,脚本没有工作没有输出。也许它的另一个关键,明天看看
  • Reader2017 不遵循卸载注册表项方法。他们的安装程序有很多很棒的文档
  • @TheIncorrigible1 这不是约定或方法。 Reader 安装程序的两个轨道都是基于 .msi 的。更新是 .msp 的。我刚刚展示了测试安装的输出...它使 reg 密钥 HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-7AD7-FFFF-7B44-AE1108756300}...
猜你喜欢
  • 2020-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多