Azure DevOps bash脚本内联vs路径输出不相同

Azure DevOps bash脚本内联vs路径输出不相同,bash,azure,azure-devops,Bash,Azure,Azure Devops,我试图通过Azure DevOps中的bash脚本任务运行bash脚本。 当我的bash脚本还很小的时候,我总是使用内联类型并在那里运行代码。在我的脚本超过5000个字符后,我被迫使用路径类型。但是在使用路径类型时出现了一些错误: 经过一些调试,试图找出托管代理在哪里愚弄我。 如果我在内联类型和路径类型中使用5000个字符的相同脚本,那么它可以在内联类型中使用,但不能在路径类型中使用,这让我想到这是关于我的设置,而不是代码本身 这是我的路径类型设置 即使我给出一个路径,毕竟它是脚本路径参数中

我试图通过Azure DevOps中的bash脚本任务运行bash脚本。 当我的bash脚本还很小的时候,我总是使用内联类型并在那里运行代码。在我的脚本超过5000个字符后,我被迫使用路径类型。但是在使用路径类型时出现了一些错误:

经过一些调试,试图找出托管代理在哪里愚弄我。 如果我在内联类型和路径类型中使用5000个字符的相同脚本,那么它可以在内联类型中使用,但不能在路径类型中使用,这让我想到这是关于我的设置,而不是代码本身

这是我的路径类型设置

即使我给出一个路径,毕竟它是脚本路径参数中的路径类型,它也给了我同样的错误。有没有我忘记设置的设置。或者我只是将内联脚本复制粘贴到一个文件中,这样做是错误的吗

[编辑]
正在运行的脚本是:

看起来像换行符问题:

/home/vsts/work/1/s/CheckAlerts.sh: line 6: declare: `arrReportsFailed
': not a valid identifier

注意错误消息中间的换行符。同样地:

/home/vsts/work/1/s/CheckAlerts.sh: line 13: syntax error near unexpected token `$'do\r''
请注意\r

bash不能处理Windows样式的CRLF行结尾。将文件更改为具有Unix样式的LF行结尾。使用.gittributes强制执行此操作:


*.sh text eol=lf

看起来像一个换行符问题:

/home/vsts/work/1/s/CheckAlerts.sh: line 6: declare: `arrReportsFailed
': not a valid identifier

注意错误消息中间的换行符。同样地:

/home/vsts/work/1/s/CheckAlerts.sh: line 13: syntax error near unexpected token `$'do\r''
请注意\r

bash不能处理Windows样式的CRLF行结尾。将文件更改为具有Unix样式的LF行结尾。使用.gittributes强制执行此操作:


*.sh text eol=lf

脚本是什么…?我的错,thnx有关提醒,请参阅EDIT@ShaykiAbramczyk有什么想法吗?可能和这个问题有关?为了将来的参考,如果你粘贴格式化文本而不是粘贴图像,阅读和处理错误消息会更容易。脚本是什么…?我的错,thnx有关提醒,请参阅EDIT@ShaykiAbramczyk有什么想法吗?也许和这个问题有关?为了将来的参考,若你们粘贴格式化文本而不是粘贴图像,阅读和处理错误消息会更容易。