Остановить kubectl от печати "стручок удален" в конце - PullRequest
0 голосов
/ 19 декабря 2018

Я использую kubectl в сценарии для получения текущего имени кластера GKE следующим образом:

CURRENT_CLUSTER=$(kubectl run curl --rm --restart=Never -it --image=appropriate/curl -- -H "Metadata-Flavor: Google" http://metadata.google.internal/computeMetadata/v1/instance/attributes/cluster-name)

К сожалению, kubect выводит pod "curl" deleted на стандартный вывод, поэтому результат таков:

my-cluster-us-west1pod "curl" deleted

Как я могу остановить kubectl от печати этой строки?

1 Ответ

0 голосов
/ 02 января 2019

Если между именем кластера и нежелательным текстом есть пробел, вы можете использовать awk, чтобы взять первое слово в выводе :

CURRENT_CLUSTER=$(kubectl run curl --rm --restart=Never -it --image=appropriate/curl -- -H "Metadata-Flavor: Google" http://metadata.google.internal/computeMetadata/v1/instance/attributes/cluster-name | awk '{print $1;}')

Но пробела нет, поэтому его нужно удалить по-другому, например, используя sed для удаления 'pod' и что-нибудь после него :

CURRENT_CLUSTER=$(kubectl run curl --rm --restart=Never -it --image=appropriate/curl -- -H "Metadata-Flavor: Google" http://metadata.google.internal/computeMetadata/v1/instance/attributes/cluster-name | sed "s/pod .*//g")

...