kubernetes liste Toutes les gousses en cours d'exécution nom
je cherche de l'option de la liste de tous les gousses nom
comment se passer de awk (ou de cut). Maintenant j'utilise cette commande
kubectl get --no-headers=true pods -o name | awk -F "/" '{print }'
5 réponses
Vous pouvez utiliser l'option Go templating intégrée dans kubectl pour formater la sortie pour juste afficher les noms pour chaque pod:
kubectl get pods -o go-template --template '{{range .items}}{{.metadata.name}}{{"\n"}}{{end}}'
Vous pouvez utiliser custom-columns dans l'option output pour obtenir le nom et l'option --no-headers
kubectl get --no-headers=true pods -l app=external-dns -o custom-columns=:metadata.name
Vous pouvez utiliser -o=nom pour afficher uniquement les noms des gousses. Par exemple, pour la liste de proxy gousses vous pouvez utiliser:
kubectl get pods -o=name --all-namespaces | grep kube-proxy
Le résultat est:
pod/kube-proxy-95rlj
pod/kube-proxy-bm77b
pod/kube-proxy-clc25
jsonpath alternative
kubectl get po -o jsonpath="{range .items[*]}{@.metadata.name}{end}" -l app=nginx-ingress,component=controller
voir aussi: plus d'exemples d'options de sortie kubectl
obtenir les noms des gousses en utilisant -o=name
saisir triche pour plus d'.
kubectl get pods -o=name
Exemple de sortie:
pod/kube-xyz-53kg5
pod/kube-xyz-jh7d2
pod/kube-xyz-subt9
Pour supprimer de fuite pod/
vous pouvez utiliser standard bash sed
commande
kubectl get pods -o=name | sed "s/^.\{4\}//"
Exemple de sortie:
kube-xyz-53kg5
kube-pqr-jh7d2
kube-abc-s2bt9
pour obtenir podname avec une chaîne particulière, linux standard grep
commande
kubectl get pods -o=name | grep kube-pqr | sed "s/^.\{4\}//"
Exemple sortie:
kube-pqr-jh7d2
avec ce nom, vous pouvez faire des choses, comme ajouter alias pour obtenir shell à lancer conteneur:
alias bashkubepqr='kubectl exec -it $(kubectl get pods -o=name | grep kube-pqr | sed "s/^.\{4\}//") bash'