Jq добавление дополнительных двойных кавычек при разборе с AWS Secrets Manager - PullRequest
0 голосов
/ 04 мая 2020

Мои секреты хранятся в AWS Secrets Manager в следующем формате:

KEY_1   "XXXX"
KEY_2   0

Я пытаюсь получить секреты в следующем формате:

KEY_1="XXXX"
KEY_2=0

, что означает так же, как они хранятся в Secrets Manager с символом =. Я использую jq для анализа следующим образом:

aws secretsmanager get-secret-value --secret-id <secret_name> --output text --query SecretString \
| jq  -r 'to_entries[] | [.key, "=", "\"", .value, "\"" ] | @tsv' \
| tr -d "\t"

Эта команда работает нормально, но с небольшой проблемой. Эта команда добавляет дополнительную двойную кавычку ("") в поле value. Это дает следующий вывод:

 KEY_1=""XXXX""
 KEY_2="0"

Но я не хочу, чтобы эти дополнительные двойные кавычки были добавлены. Я хочу, чтобы выходные данные были в том же формате, что и описанный выше при получении выше, т.е. без лишних кавычек.

1 Ответ

0 голосов
/ 04 мая 2020

Вы выводите как текст, зачем нужен jq?

- вывод текста

Если вы хотите вывести как json, вы можете использовать

- выход json

...