##0. ファイル
- 対象ファイル(external-scripts.json)
[
"hubot-diagnostics",
"hubot-help",
"hubot-heroku-keepalive",
"hubot-google-images",
"hubot-google-translate",
"hubot-pugme",
"hubot-maps",
"hubot-redis-brain",
"hubot-rules",
"hubot-shipit"
]
##1. 追加
- 配列の最後尾に要素追加
- 配列の要素数もjqで取得して使う
cat external-scripts.json | jq ".[$(cat external-scripts.json | jq '. | length')]|= .+\"hoge\""
[
"hubot-diagnostics",
"hubot-help",
"hubot-heroku-keepalive",
"hubot-google-images",
"hubot-google-translate",
"hubot-pugme",
"hubot-maps",
"hubot-redis-brain",
"hubot-rules",
"hubot-shipit",
"hoge" # <= 最後にhogeが追加された
]
# 追記: これでもできますが後からためしてみると、もっと簡単にできそうです
jq '.+["hohe"]' external-scripts.json # とか
cat external-scripts.json | jq '.|=.+["hoge"]' # とか
##2. 削除
-
hubot-heroku-keepalive
を配列から削除して表示してみる
cat external-scripts.json | jq ' .-["hubot-heroku-keepalive"]'
[
"hubot-diagnostics",
"hubot-help",
"hubot-google-images",
"hubot-google-translate",
"hubot-pugme",
"hubot-maps",
"hubot-redis-brain",
"hubot-rules",
"hubot-shipit",
]
-
hubot-shipit
とhubot-pugme
を配列から削除して表示してみる
cat external-scripts.json | jq ' .-["hubot-pugme","hubot-shipit"]'
[
"hubot-diagnostics",
"hubot-help",
"hubot-google-images",
"hubot-google-translate",
"hubot-maps",
"hubot-redis-brain",
"hubot-rules"
]