以下是一个命令,可以导出k8s所有ConfigMap为独立的yaml文件:
for i in $(kubectl get configmaps -o=jsonpath='{range .items[*]}{.metadata.name}{"\n"}{end}'); do kubectl get cm $i -o yaml --export > ${i}.yaml; done
该命令会使用一个循环来遍历所有ConfigMap,并对每个ConfigMap执行以下操作:
- 使用
kubectl get
命令获取ConfigMap的详细信息。 - 将输出转换为YAML格式,并使用
--export
标志以确保只提取必要的字段。 - 将YAML内容写入以 ConfigMap 名称命名的文件中。
这样,您就可以在当前目录下找到所有导出的ConfigMap YAML文件。