我有这个命令:
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer @(Invoke-Command {gcloud auth application-default print-access-token})" https://speech/googleapis.com/v1/speech:recognize -d @X:\Dropbox\andela-docs\phase-II-docs\google-machine-learning-apis-designing-implementing-solutions\demos\datasets\data-linear16.json
在 Linux 中,此命令将按如下方式运行:
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" https://speech/googleapis.com/v1/speech:recognize -d @X:\Dropbox\andela-docs\phase-II-docs\google-machine-learning-apis-designing-implementing-solutions\demos\datasets\data-linear16.json
我正在尝试获取$(gcloud auth application-default print-access-token)"
curl 命令的此部分的 Windows Powershell 等效项,以便可以传递令牌
答案1
注意事项:
PowerShell 可以使用 curl.exe,就像使用 cmd.exe 一样。但是,使用不带扩展名“.exe”的命令 curl 意味着您正在使用 PowerShell 别名,因此不是同一件事。因此,要么直接在 PowerShell 中使用“curl.exe”,使用其正常命令规范,要么您需要深入了解交互式语音应答从而改变你处理这个问题的方式。
按照内置的 PowerShell 帮助。
Get-Help -Name Invoke-WebRequest |
Format-List -Force
<#
CommonParameters : True
WorkflowCommonParameters : False
details : @{name=Invoke-WebRequest; noun=WebRequest; verb=Invoke}
Syntax : @{syntaxItem=System.Object[]}
parameters : @{parameter=System.Object[]}
inputTypes : @{inputType=}
relatedLinks : @{navigationLink=System.Management.Automation.PSObject[]}
returnValues : @{returnValue=}
***
aliases : iwr
wget
curl
***
remarks : Get-Help cannot ...
PSSnapIn :
alertSet :
description :
examples :
Synopsis :
Invoke-WebRequest [-Uri] ...
ModuleName : Microsoft.PowerShell.Utility
nonTerminatingErrors :
xmlns:command : http://schemas.microsoft.com/maml/dev/command/2004/10
xmlns:dev : http://schemas.microsoft.com/maml/dev/2004/10
xmlns:maml : http://schemas.microsoft.com/maml/2004/10
Name : Invoke-WebRequest
Category : Cmdlet
Component :
Role :
Functionality :
#>
使用任何外部 PowerShell 命令时,如果需要,请引用并进行特殊处理。
另请参阅重定向