使用 PowerShell 5 或更高版本来检测给定 Windows 服务器(我们可以假设是 Windows Server 2012 R2 或更高版本)上是否安装了任意版本的 Apache Tomcat 的正确方法是什么?
答案1
到目前为止我想到的是使用 cmdlet Get-Service
,如下所示:
Get-Service | where-object {$_.name -like 'Tomcat?'}
这将返回如下输出:
Status Name DisplayName
------ ---- -----------
Running Tomcat8 Apache Tomcat 8.5 Tomcat8
并且可以将其存储在变量中或发送到if
语句来确定它是否为空。
在过滤器中使用通配符“Tomcat”可能是值得的,因为这可能会停止与 Tomcat 10 一起工作,除非他们决定将其命名为 TomcatX。