首页 > 解决方案 > 用于浏览器的 Powershell 更改

问题描述

今天我写了一些小代码来改变我的默认浏览器。

这是我的代码:

  function Set-DefaultBrowser
{
    $browser = (Get-Item -Path "HKLM:\SOFTWARE\RegisteredApplications").Property | Where-Object -FilterScript{ $ -like "Firefox*"} # Read registered Browsers and Filter Firefox  
    Invoke-Expression "$($exe_path) HKLM $($browser)"
}

但我收到了这个错误:

 $ : Die Benennung "$" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der 
Pfad korrekt ist (sofern enthalten), und wiederholen Sie den Vorgang.
In N:\Privat\Dokumente\philips_bs_script.ps1:19 Zeichen:112
+ ... steredApplications").Property | Where-Object -FilterScript{ $ -like " ...
+                                                                 ~
    + CategoryInfo          : ObjectNotFound: ($:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

你有什么解决办法吗?

感谢 VallingSki

标签: windowspowershell

解决方案


该警告暗示“$”不是 Powershell 已知的 cmdlet 的名称。在您的-FilterScript脚本块中,当您可能打算输入“$_”时,您输入了“$”。


推荐阅读