kubectl 命令自动补全
进行 Kubernetes 操作时。你可以将这些加载命令添加到你的 Shell 配置文件中,以便每次启动 Shell 时都能自动加载。的命令补全脚本来实现自动补全提示的方法。这可以大大提高在命令行中使用。这是一种非常方便的方法,尤其在你经常使用。在 Bash 中,可以通过以下方式加载。在 Zsh 中,可以使用以下方式加载。键来进行命令自动补全了。在这之后,你就可以在终端中输入。
·
kubectl 自带的补全
kubectl
的命令补全脚本来实现自动补全提示的方法。这可以大大提高在命令行中使用 kubectl
时的效率。
在 Bash 中,可以通过以下方式加载 kubectl
的命令补全脚本:
source <(kubectl completion bash)
## 加入~/.bashrc
bash ##刷新配置
在 Zsh 中,可以使用以下方式加载 kubectl
的命令补全脚本:
source <(kubectl completion zsh)
## 加入~/.zshrc
zsh ##刷新配置
在这之后,你就可以在终端中输入 kubectl
后按下 Tab
键来进行命令自动补全了。例如,输入 kubectl get p
然后按下 Tab
键,它会自动补全为 kubectl get pods
。
这是一种非常方便的方法,尤其在你经常使用 kubectl
进行 Kubernetes 操作时。你可以将这些加载命令添加到你的 Shell 配置文件中,以便每次启动 Shell 时都能自动加载。
kubectl completion -h
可以看自动补全文档
Oh My Zsh 历史命令自动提示
安装 Oh My Zsh
yum install git zsh curl -y
zsh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
#中国区加速
zsh -c "$(curl -fsSL http://qiniu.dywlkj.com/install-omz.sh)"
#安装是询问是否设置默认zsh 选是
#生效刷新
zsh
安装 zsh-autosuggestions 插件
cd ~/.oh-my-zsh/custom/plugins/
#中国区gitee.com加速
git clone https://gitee.com/XiongMingcai/zsh-autosuggestions.git
# 验证
omz plugin list |grep autosuggesti
zsh-autosuggestions
## 启用插件
omz plugin enable zsh-autosuggestions
kubectl 命令缩写插件
## 启用
omz plugin enable kubectl
## 查看kubectl 缩写命令
omz plugin info kubectl
Alias | Command | Description |
---|---|---|
k | kubectl | The kubectl command |
kca | kubectl --all-namespaces | The kubectl command targeting all namespaces |
kaf | kubectl apply -f | Apply a YML file |
keti | kubectl exec -ti | Drop into an interactive terminal on a container |
Manage configuration quickly to switch contexts between local, dev and staging | ||
kcuc | kubectl config use-context | Set the current-context in a kubeconfig file |
kcsc | kubectl config set-context | Set a context entry in kubeconfig |
kcdc | kubectl config delete-context | Delete the specified context from the kubeconfig |
kccc | kubectl config current-context | Display the current-context |
kcgc | kubectl config get-contexts | List of contexts available |
General aliases | ||
kdel | kubectl delete | Delete resources by filenames, stdin, resources and names, or by resources and label selector |
kdelf | kubectl delete -f | Delete a pod using the type and name specified in -f argument |
Pod management | ||
kgp | kubectl get pods | List all pods in ps output format |
kgpw | kgp --watch | After listing/getting the requested object, watch for changes |
kgpwide | kgp -o wide | Output in plain-text format with any additional information. For pods, the node name is included |
kep | kubectl edit pods | Edit pods from the default editor |
kdp | kubectl describe pods | Describe all pods |
kdelp | kubectl delete pods | Delete all pods matching passed arguments |
kgpl | kgp -l | Get pods by label. Example: kgpl "app=myapp" -n myns |
kgpn | kgp -n | Get pods by namespace. Example: kgpn kube-system |
Service management | ||
kgs | kubectl get svc | List all services in ps output format |
kgsw | kgs --watch | After listing all services, watch for changes |
kgswide | kgs -o wide | After listing all services, output in plain-text format with any additional information |
kes | kubectl edit svc | Edit services(svc) from the default editor |
kds | kubectl describe svc | Describe all services in detail |
kdels | kubectl delete svc | Delete all services matching passed argument |
Ingress management | ||
kgi | kubectl get ingress | List ingress resources in ps output format |
kei | kubectl edit ingress | Edit ingress resource from the default editor |
kdi | kubectl describe ingress | Describe ingress resource in detail |
kdeli | kubectl delete ingress | Delete ingress resources matching passed argument |
Namespace management | ||
kgns | kubectl get namespaces | List the current namespaces in a cluster |
kcn | kubectl config set-context --current --namespace | Change current namespace |
kens | kubectl edit namespace | Edit namespace resource from the default editor |
kdns | kubectl describe namespace | Describe namespace resource in detail |
kdelns | kubectl delete namespace | Delete the namespace. WARNING! This deletes everything in the namespace |
ConfigMap management | ||
kgcm | kubectl get configmaps | List the configmaps in ps output format |
kecm | kubectl edit configmap | Edit configmap resource from the default editor |
kdcm | kubectl describe configmap | Describe configmap resource in detail |
kdelcm | kubectl delete configmap | Delete the configmap |
Secret management | ||
kgsec | kubectl get secret | Get secret for decoding |
kdsec | kubectl describe secret | Describe secret resource in detail |
kdelsec | kubectl delete secret | Delete the secret |
Deployment management | ||
kgd | kubectl get deployment | Get the deployment |
kgdw | kgd --watch | After getting the deployment, watch for changes |
kgdwide | kgd -o wide | After getting the deployment, output in plain-text format with any additional information |
ked | kubectl edit deployment | Edit deployment resource from the default editor |
kdd | kubectl describe deployment | Describe deployment resource in detail |
kdeld | kubectl delete deployment | Delete the deployment |
ksd | kubectl scale deployment | Scale a deployment |
krsd | kubectl rollout status deployment | Check the rollout status of a deployment |
kres | kubectl set env $@ REFRESHED_AT=... | Recreate all pods in deployment with zero-downtime |
Rollout management | ||
kgrs | kubectl get replicaset | List all ReplicaSets rs created by the deployment |
kdrs | kubectl describe replicaset | Describe ReplicaSet in detail |
kers | kubectl edit replicaset | Edit ReplicaSet from the default editor |
krh | kubectl rollout history | Check the revisions of this deployment |
kru | kubectl rollout undo | Rollback to the previous revision |
Port forwarding | ||
kpf | kubectl port-forward | Forward one or more local ports to a pod |
Tools for accessing all information | ||
kga | kubectl get all | List all resources in ps format |
kgaa | kubectl get all --all-namespaces | List the requested object(s) across all namespaces |
Logs | ||
kl | kubectl logs | Print the logs for a container or resource |
klf | kubectl logs -f | Stream the logs for a container or resource (follow) |
File copy | ||
kcp | kubectl cp | Copy files and directories to and from containers |
Node management | ||
kgno | kubectl get nodes | List the nodes in ps output format |
keno | kubectl edit node | Edit nodes resource from the default editor |
kdno | kubectl describe node | Describe node resource in detail |
kdelno | kubectl delete node | Delete the node |
Persistent Volume Claim management | ||
kgpvc | kubectl get pvc | List all PVCs |
kgpvcw | kgpvc --watch | After listing/getting the requested object, watch for changes |
kepvc | kubectl edit pvc | Edit pvcs from the default editor |
kdpvc | kubectl describe pvc | Describe all pvcs |
kdelpvc | kubectl delete pvc | Delete all pvcs matching passed arguments |
StatefulSets management | ||
kgss | kubectl get statefulset | List the statefulsets in ps format |
kgssw | kgss --watch | After getting the list of statefulsets, watch for changes |
kgsswide | kgss -o wide | After getting the statefulsets, output in plain-text format with any additional information |
kess | kubectl edit statefulset | Edit statefulset resource from the default editor |
kdss | kubectl describe statefulset | Describe statefulset resource in detail |
kdelss | kubectl delete statefulset | Delete the statefulset |
ksss | kubectl scale statefulset | Scale a statefulset |
krsss | kubectl rollout status statefulset | Check the rollout status of a deployment |
Service Accounts management | ||
kdsa | kubectl describe sa | Describe a service account in details |
kdelsa | kubectl delete sa | Delete the service account |
DaemonSet management | ||
kgds | kubectl get daemonset | List all DaemonSets in ps output format |
kgdsw | kgds --watch | After listing all DaemonSets, watch for changes |
keds | kubectl edit daemonset | Edit DaemonSets from the default editor |
kdds | kubectl describe daemonset | Describe all DaemonSets in detail |
kdelds | kubectl delete daemonset | Delete all DaemonSets matching passed argument |
CronJob management | ||
kgcj | kubectl get cronjob | List all CronJobs in ps output format |
kecj | kubectl edit cronjob | Edit CronJob from the default editor |
kdcj | kubectl describe cronjob | Describe a CronJob in details |
kdelcj | kubectl delete cronjob | Delete the CronJob |
Job management | ||
kgj | kubectl get job | List all Job in ps output format |
kej | kubectl edit job | Edit a Job in details |
kdj | kubectl describe job | Describe the Job |
kdelj | kubectl delete job | Delete the Job |
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献4条内容
所有评论(0)