我试图通过ssh在远程计算机上运行PowerShell脚本。我已经配置了Azure版本,但我得到了一个非常奇怪的错误。
这就是我的配置文件的样子
steps:
- task: SSH@0
displayName: 'Run shell script on remote machine'
inputs:
sshEndpoint: 'Dev SSH service'
failOnStdErr: false
runOptions: script
scriptPath: '$(Build.SourcesDirectory)/Pipelines/Scenarios/test.ps1'
readyTimeout: '20000'
这就是我的Powershell脚本的样子:
Write-Host "Hello, World!"
远程计算机通过PowerShell配置ssh。
我得到的错误如图所示
转录:
tr -d '\015' <./test.ps1> ./test.ps1._unix
##[error]At line:1 char:14
##[error]+ tr -d '\015' <./test.ps1> ./test.ps1._unix
##[error]The '<' operator is reserved for future use.
##[error] + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
##[error] + FullyQualifiedErrorId : RedirectionNotSupported
##[error]Error: Command tr -d '\015' <./test.ps1> ./test.ps1._unix exited with code 1.
2条答案
按热度按时间nle07wnf1#
我解决了问题。我创造了一个系统。调试变量。我看到了SSH0是如何工作的,最后我只是将脚本复制到远程机器上,并通过设置Run =命令来执行它。
j8yoct9x2#
我知道这是一个老职位,但我只是遇到了这个同样的问题,并认为我会张贴修复,为我工作。
我正在使用PowerShell脚本,并且我已经将Windows目标计算机配置为默认SSH shell为PowerShell。
上面的错误来自试图在此处删除windows行尾的脚本:链接(第219行)
要解决此问题,请执行以下操作:
RunOptions应从“Inline”更改为“Comands”内联节点应变为命令
出发地:
收件人: