我试图创建一个bash脚本,使github pull request成为我的代码:
我收到此错误:
curl: (6) Could not resolve host: on
curl: (3) [globbing] unmatched close brace/bracket in column 63
{
"message": "Problems parsing JSON",
"documentation_url": "https://developer.github.com/v3"
}
请帮忙
答案 0 :(得分:2)
更多/正确引用:
body=$(printf '{"title":"%s","body":"%s","head":"clamour:%s","base":"%s"}' "$TITLE" "$DESCRIPTION" "$TARGET" "$SOURCE")
curl -H "$auth" -d "$body" "https://api.github.com/repos/clamour/$PROJECT/pulls"
所有用户提供的变量必须被引用(除非您确切地知道为什么要离开然后不加引号)。
在${braces}
中加上变量名称不与"$quoting"
相同。
我发现使用printf
往往比使用变量插值混合双引号和单引号更清晰。
不要使用ALLCAPS变量名的习惯:有一天你会使用PATH=...
,然后想知道为什么你的脚本坏了
答案 1 :(得分:1)
你使用了很多变量 试着这样做
BODY="{\"title\":\"$TITLE\",\"body\":\"$DESCRIPTION\",\"head\":\"clamour\":\"$TARGET\",\"base\":\"$SOURCE\"}"
"https://api.github.com/repos/clamour/$PROJECT/pulls"