Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/FingerLiu/kubectl-smart
A kubectl plugin that makes kubectl smart with name search.Type less letters!Save more life!
https://github.com/FingerLiu/kubectl-smart
Last synced: 3 months ago
JSON representation
A kubectl plugin that makes kubectl smart with name search.Type less letters!Save more life!
- Host: GitHub
- URL: https://github.com/FingerLiu/kubectl-smart
- Owner: FingerLiu
- License: mit
- Created: 2021-03-16T05:06:44.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-04-13T05:54:37.000Z (about 2 years ago)
- Last Synced: 2023-07-31T18:09:21.753Z (11 months ago)
- Language: Shell
- Size: 356 KB
- Stars: 9
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Lists
- awesome-stars - FingerLiu/kubectl-smart - A kubectl plugin that makes kubectl smart with name search.Type less letters!Save more life! (Shell)
README
# kubectl-smart
A kubectl plugin that makes kubectl smart with name search.Type less letters!Save more life!
![demo](./imgs/kubectl-smart.gif)# Installation
using curl:
```bash
curl -LO https://github.com/FingerLiu/kubectl-smart/raw/main/kubectl-smart
chmod +x ./kubectl-smart
sudo mv ./kubectl-smart /usr/local/bin/kubectl-smart
kubectl smart -h
```using krew:
```bash
TODO
kubectl smart -h
```# Usage
```bash
USAGE:
smart sub_command [options...] [name_pattern...]
SUB_COMMAND:
gp : shortcut for get pod
l,logs : shortcut for logs
e,exec : shortcut for exec
edp : shortcut for edit pod
ed,edit : shortcut for edit
dp : shortcut for delete pod
g : shortcut for get
h,help : show this message
OPTIONS:
-n : namespace
-w,--wide : TODO get with wide output
-f,--follow : follow log output
--tail : tail logs
-t : --tty=true: Stdin is a TTY
-i : --stdin=true: Pass stdin to the container
-s : sort by create datetime
-c : TODO container name.
-e : use exact match rather than grep. Only use this when you want to disable grep when grep return multi items.
Examples:
# if you installed through krew, you should **kubectl smart** to replace **kubectl s**
# get pod with name contains my in namespace her-namespace
# (kubectl get pod -n her-namespace-a |grep my)
kubectl smart gp -n her.*a my# get log for pod with name my
# (kubectl logs --tail 100 -f $(kubectl get pods | awk '/my/ {print $1;exit}'))
kubectl smart l my# exec into pod
# kubectl exec -ti my-pod-i3jx bash
kubectl smart e my bash# get deploy with name contains my
# (kubectl get deploy | grep my)
kubectl smart g deploy my
alias k=`kubectl smart`
# get pod with ascending sort
# --sort-by=.metadata.creationTimestamp
k gp my -s# get pod with descending sort
# --sort-by=.metadata.creationTimestamp
k gp my -s | tac
```