仅获取所有命名空间的名称 Kubectl - Kubernetes

Ker*_*bol 9 kubernetes kubectl

我想使用 kubectl 命令获取 Kubernetes 集群中所有命名空间的名称列表。

目前,我正在运行下面的 kubectl 命令,它为我提供了所有命名空间的列表。

但是,我不想看到“ACTIVE”和“AGE”列。我只想要 NAME 列。

其背后的原因是,我可以将 NAME 列中的所有项目添加到数组中以进行进一步处理。

> kubectl get namespaces
NAME                      STATUS   AGE
dread-gorge               Active   284d
dread-lagoon              Active   210d
carncier-basin            Active   164d
chantague-shallows        Active   164d
hilraine-loch             Active   311d
stangrave-waters          Active   271d
Run Code Online (Sandbox Code Playgroud)

P..*_*... 14

解决方案1:

这是另一种方法:

 kubectl get ns  --no-headers -o custom-columns=":metadata.name"
Run Code Online (Sandbox Code Playgroud)

-o=custom-columns= 使用逗号分隔的自定义列列表打印表格

解决方案2:

另一种获取资源类型名称的方法:

kubectl get ns -o name
Run Code Online (Sandbox Code Playgroud)


Sai*_*nti 8

使用 kubectl 备忘单中的 jsonpath

kubectl get ns -o jsonpath='{range .items[*]}{.metadata.name}{"\n"}{end}'
default
gitlab-runner
kube-node-lease
kube-public
kube-system
Run Code Online (Sandbox Code Playgroud)