#json #git
#json #git
Вопрос:
Я хочу получить количество коммитов в день в час. С помощью следующей команды я могу получить выходные данные в формате json. Однако я хотел бы знать, могу ли я добавить ключ к значениям в формате json с помощью командной строки?
curl https://api.github.com/repos/test/myrepo/stats/punch_card
Текущий вывод:
[
0,
2,
32
]
Ожидаемый результат:
[
day: 0,
hour: 2,
commits: 32
]
Комментарии:
1. Насколько указано в документах GitHub API , API не выдает ключи вместе с этими значениями.
Ответ №1:
Поскольку вы не указали ничего, кроме «командной строки», я предполагаю, что вам нужно bash
решение на основе a. Этот простой (хотя и довольно уродливый) скрипт будет делать то, что вы хотите, сохраняя при этом отступ (кроме закрывающей квадратной скобки общего ответа):
#!/bin/bash
resp=$(curl https://api.github.com/repos/test/myrepo/stats/punch_card)
nextPref=""
for val in $resp
do
echo "$nextPref $val"
if [[ $val == "[" amp;amp; $nextPref == "" ]]
then
nextPref=" "
elif [[ $val == "[" amp;amp; $nextPref == " " ]]
then
nextPref=" day:"
elif [[ $nextPref == " day:" ]]
then
nextPref=" hour:"
elif [[ $nextPref == " hour:" ]]
then
nextPref=" commits:"
elif [[ $nextPref == " commits:" ]]
then
nextPref=" "
fi
done