背景
最近利用 jq 寫了幾個 GitHub Actions,其輸出(outputs)只能作為字符串,而 "null" 字符串永遠為真,而這種場景下,jq 於無匹配時返回空字符串更方便。
解決方案
可以通過追加 // empty 註釋,以返回空字符串,而非 null。
1$ echo '{"foo":"bar"}' | jq '.foo'
2"bar"
3
4$ echo '{"foo":"bar"}' | jq '.fizz'
5null
6
7$ echo '{"foo":"bar"}' | jq '.fizz // empty'
8
9$ echo '{"foo":"bar"}' | jq '.foo // empty'
10"bar"




