You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将JSON文件内容传入GITHUB_OUTPUT?已尝试方案报错

解决GitHub Actions中JSON内容存入GITHUB_OUTPUT的格式错误问题

问题出在JSON内容包含换行、空格或特殊字符,直接写入GITHUB_OUTPUT会违反其格式要求(输出值必须是单行,特殊字符需转义)。以下是两种可行的解决方法:

方法一:用jq压缩并转义JSON(推荐)

jq是处理JSON的工具,能将多行JSON压缩为单行并自动转义特殊字符,确保符合GITHUB_OUTPUT的格式规范:

# 读取JSON文件并压缩为单行
min_req=$(cat min-requirements.json | jq -c .)
# 写入GITHUB_OUTPUT
echo "min_req=$min_req" >> "$GITHUB_OUTPUT"

方法二:用sed替换换行符(无jq环境时使用)

如果环境没有jq,可以用sed将JSON中的换行符替换为转义的\n,把内容转为单行:

# 替换换行符为转义序列
min_req=$(cat min-requirements.json | sed -z 's/\n/\\n/g')
# 写入GITHUB_OUTPUT
echo "min_req=$min_req" >> "$GITHUB_OUTPUT"

后续引用说明

后续步骤中引用输出的写法保持不变,GitHub Actions会自动解析转义后的内容:

min-req-output: ${{ steps.get_min_requirement.outputs.min_req }}

内容的提问来源于stack exchange,提问作者omarkorety

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 01:10:55