如何在一行中指定 $ProgressPreference = 'SilentlyContinue'

如何在一行中指定 $ProgressPreference = 'SilentlyContinue'

我正在ssh从 Linux 服务器运行 PowerShell 命令,并且需要$ProgressPreference = 'SilentlyContinue'在一行中指定Invoke-Request命令。

ssh [email protected] PowerShell \$ProgressPreference='SilentlyContinue'; Invoke-WebRequest -Uri https://example.com/archive.zip -OutFile archive.zip;

由于

SilentlyContinue : The term 'SilentlyContinue' is not recognized as the name of a cmdlet, function, script file, or 
operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try 
again.
At line:1 char:21
+ $ProgressPreference=SilentlyContinue
+                     ~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (SilentlyContinue:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

我试过

  • 省略转义$
  • 各种引文'及其组合"\"

导致非常相似的错误消息,指出无法找到命令或对象。

我在 Google Compute Platfrom VM 中的 Windows Server 2019 数据中心上运行 OpenSSH,并从在 Google Kubernetes 上运行的 Google Cloud SDK Docker 映像 327.0.0 进行连接。

答案1

我个人真的不喜欢与逃避的事情作斗争,所以我只想选择这个:

Set-Variable ProgressPreference SilentlyContinue ; Invoke-WebRequest -Uri https://example.com/archive.zip -OutFile archive.zip;

Set-Variablecmdlet 为指定变量赋值或更改当前值。如果变量不存在,则 cmdlet 创建该变量。

相关内容