短手使用kubectl选择第一个吊舱



我在Windows 10上,正在使用WSL。

我的命名空间中有8个pod:

NAME                   READY   STATUS    RESTARTS   AGE
app-85b6fd4dc9-4chnq   1/1     Running   0          17m
app-85b6fd4dc9-9c5dc   1/1     Running   0          19m
app-85b6fd4dc9-cth6d   1/1     Running   0          19m
app-85b6fd4dc9-m8pc8   1/1     Running   0          19m
app-85b6fd4dc9-mrsnv   1/1     Running   0          18m
app-85b6fd4dc9-qtdtl   1/1     Running   0          17m
app-85b6fd4dc9-xzmdx   1/1     Running   0          17m
app-85b6fd4dc9-zbft7   1/1     Running   0          19m

我真的需要赶紧去看看原木。我目前的模式是:

kubectl get pods -n my_namespace
[copy NAME of the pod]
kubectl logs --follow pod_name -n my_namespace
# live tail logs here

我想跳过所有pod的显示,相反,我想直接转到第一个可用的或列表上的第一个,这是适用的。谢谢你回答我的问题

您可以在PowerShell中尝试以下操作,根据问题中提供的输出在PowerShell窗口10中进行测试。


$var = (kubectl get pods -n my_namespace  | Select -First 2 | Select -Last 1 | %{ (-split $_)[0]) ; kubectl logs --follow $var -n my_namespace

我没有根据kubectl验证它,但它应该可以工作,或者你可以在microsoft.powershell.utility 上查看更多详细信息

使用AWK 的Equelevent命令

export pod=$(kubectl get pods -n namespace | awk 'FNR==2{print $1}' ) | kubectl logs -f $pod -n mypod

使用kubectl自动完成工具。

有很多可用的工具,你需要找到最适合你的。

  • https://github.com/bonnefoa/kubectl-fzf
  • https://github.com/evanlucas/fish-kubectl-completions

执行TAB以显示可用选项:

$ kubectl logs -f -n kube-system [TAB]kubedb-enterprise-5cc89b87c5-k…
coredns-f9fd979d6-zcrmp                     (Pod)
coredns-f9fd979d6-zdr9c                     (Pod)
etcd-kind-control-plane                     (Pod)
kindnet-gvwcn                               (Pod)
…and 4 more rows

相关内容

  • 没有找到相关文章

最新更新