Powershell 中的通配符

Wildcards in Powershell

我是 Powershell 的新手,正在尝试合并通配符。我正在尝试将通配符添加到行

Add-AppxPackage –DisableDevelopmentMode -register "C:\Program Files\WindowsApps\Microsoft.MicrosoftStickyNotes_3.8.8.0_x64__8wekyb3d8bbwe\appxmanifest.xml"

这可以正常工作并在 PC 上安装便利贴。但是,StickyNotes 的版本总是在变化,运行 如果当前版本不是 3.8.8.0,那一行就会失败。有没有一种方法可以添加通配符以使其安装任何版本的 StickyNotes?我试过

Add-AppxPackage –DisableDevelopmentMode -register "C:\Program Files\WindowsApps\Microsoft.MicrosoftStickyNotes*\appxmanifest.xml"

我们正在使用它为我们的员工安装 Microsoft 应用程序,而无需打开 Microsoft Store,因为我们已将其阻止。 感谢您的帮助。

给猫剥皮的方法有一千种,我会这样做:

#grab all folders
$versionsFull=dir "C:\Program Files\WindowsApps\"
$VersionsNumberOnly=@()
#isolate the version numbers
foreach($v in $versionsFull){
$VersionsNumberOnly+=$v.name.split("_")[1]
}
#find the newest
$newestVersion=$VersionsNumberOnly|sort -Descending|Select -first 1
$newestVersion
#add to path
Add-AppxPackage –DisableDevelopmentMode -register "C:\Program Files\WindowsApps\Microsoft.MicrosoftStickyNotes_$newestversion`_x64__8wekyb3d8bbwe\appxmanifest.xml"