繁体   English   中英

Powershell-从cab文件中提取KB名称

[英]Powershell - Extract KB name from cab file

我正在尝试从cab文件中推断KB名称,因为需要在脚本中使用它来验证补丁程序的安装。

文件名可以不同,但​​是模式似乎始终像KB1234567(KB + 7位数字)。

我使用以下方法解决了这个问题,但是我一直在寻找一种更好的方法来防止这种情况的改变:

PS C:\Users\user> $name
IE11-Windows6.1-KB4089187-x64.cab
PS C:\Users\user> $name.Substring($name.indexof("KB")).TrimEnd("-x64.cab")
KB4089187

正如@JeffZeitlin在他的评论中所说,如果名称遵循一致的模式,则可以使用其他技术。 但是,如果全名不是标准名称,但在某处包含KBxxxxxxx,则可以使用Select-String这样的名称来查找它:

$name = "IE11-Windows6.1-KB4089187-x64.cab"

$namesplit = (Select-String -InputObject $name -Pattern "KB\d{7}").Matches[0].Value

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM