有没有什么简单的命令行选项可以将我的整个etcd数据库导出到json文件中,同时还可以自动从Base64解码键和值?
到目前为止,我成功的是(示例show 1x key/Value):
./etcdctl get "" --prefix -w json | jq -r ".[] | .[] "
{
"key": "YnktZGV2L21ldGEvc25hcHNob3RzL3Jvb3QtY29vcmQvcGFydGl0aW9ucy80NDAwNDc0MjQ2MTgzNjUxNzAvNDQwMDQ3NDI0NjE4MzY1MTcxX3RzNDQwMDQ5NDg5ODkxODE5NTI0",
"create_revision": 44536,
"mod_revision": 44536,
"version": 1,
"value": "CPOB0OXRmdeNBhIIX2RlZmF1bHQYhIDgxN/V140GIPKB0OXRmdeNBg=="
}
但我需要将整个数据库键和值解码为人类可读的格式?
谢谢
附注: @Jeff Mercado帮助后的最终解决方案:
1. /etcdctl get "" --prefix -w json | jq '.[]' > etcd_filter.txt
2. Clear output to form array of objects [{},{} ...{}]
3. cat etcd_filter.txt | jq '.[] | (.key, .value) |= @base64d'