使用-w json或--hex标志提取json(base64)或hex格式的etcd数据很简单
ETCDCTL_API=3 etcdctl get /registry/secrets/myns/mykey --print-value-only --hex
ETCDCTL_API=3 etcdctl get /registry/secrets/myns/mykey -w json
但是一个人如何通过cli从另一个etcd实例中写入hex / json提取的数据?etcdctl put
不接受任何这些参数,并将通过的值存储为字符串
etcd可以从stdin接收输入,因此可以通过管道传递数据]
获取json中的值(以base64编码):
ETCDCTL_API=3 etcdctl get key -w json | jq .kvs[].value | tr -d \" > value.b64
在相同/其他etcd实例上PUT解码值
base64 -D -i ./value.b64 | ETCDCTL_API=3 etcdctl put key