巧用终端,每天节省2小时

markdown 复制代码
如果你认为这篇文章能够帮到你,请一键三连(点赞,收藏,评论),点点关注!
有好的想法或问题,也可以私聊我进行沟通!

文章目录

起因

最近经常做项目,发现常用的kubectl命令,虽然终端有历史记录,但是经常的输入,还是让我很难受,偶尔一次可能还没什么,但是高频的使用,让我觉得,每一次使用都是对自己时间的浪费。

统计了一下,

我最常用的几个命令有

kubectl -n v2-test get pods -w
kubectl -n v2-test describe pod ...
kubectl -n v2-test exec -it ... -- bash

其中命名空间常用的有2个v2-testv2-dev,那么有什么能够解放我的双手呢?

处理结果

既然是终端命令,那就交给alias吧!

最简单,也是第一个方法,那就是别名(alias)

alias(别名)

这个应该都陌生,怎么操作,那就跟我来吧!

    1. 在终端打开shell 配置文件,根据自己的使用来打开,我这里用的是.zshrc
git 复制代码
vim ~/.zshrc
  • 2.在文件的尾部增加alias
git 复制代码
alias v2-dev='kubectl -n v2-dev'
alias v2-test='kubectl -n v2-test'
  • 3.保存文件后,执行以下命令让配置立即生效
git 复制代码
source ~/.zshrc

下面来看一下结果


函数

那么,还有没有更简单的方法呢?

当然有了,那就是函数,我们可以将v2-test也进行缩减。方法如下

    1. 在终端打开shell 配置文件,根据自己的使用来打开,我这里用的依旧是.zshrc
git 复制代码
vim ~/.zshrc
  • 2.在文件末尾增加函数内容
git 复制代码
# 超极简 k8s 快捷命令(vd=v2-dev, vt=v2-test)
vd() { kubectl -n v2-dev get "${1:-pods}" ${@:2}; }
vt() { kubectl -n v2-test get "${1:-pods}" ${@:2}; }
  • 3.保存文件后,执行以下命令让配置立即生效
git 复制代码
source ~/.zshrc

来看使用结果

效果显而易见

那就来解释一下这个命令吧

git 复制代码
# 超极简 k8s 快捷命令(vd=v2-dev, vt=v2-test)
vd() { kubectl -n v2-dev get "${1:-pods}" ${@:2}; }
vt() { kubectl -n v2-test get "${1:-pods}" ${@:2}; }
  • vd() 直接对应 v2-dev 命名空间,vt() 对应 v2-test,省去多余的参数拆分逻辑
  • ${1:-pods}:如果第一个参数没传(比如只输 vd),默认使用 pods,实现 "输啥都能省"
  • ${@:2}:取第二个及以后的所有参数(比如 -w),自动拼接到命令后面

对比

下面我们用2个命令来进行对比前后差异

方案类型 具体命令写法 输入字符数 简化比例
原生方法__ kubectl -n v2-test get pods -w 30 0%
alias(别名) v2-test get pods -w 19 36.7%
函数 vt get pods -w 14 53.3%

当然,甚至这也还不是最简单的,如果还想简单,你也可以将一些常用命令设置为自己认为可以的别名,比如

git 复制代码
alias vd-pw='kubectl -n v2-dev get pods -w'
alias vd-p='kubectl -n v2-dev get pods'
alias vd-dp='kubectl -n v2-dev describe pod'

原生语句

git 复制代码
kubectl -n v2-dev describe pod podName

使用别名

git 复制代码
vd-dp podName

总结

结合alias和函数,再进行一些常用函数的兼容,效率提升50%不是问题!

开发者的电脑,在自己熟练掌握各种命令后,进行魔改缩减,是再常见不过的了,提效方法,是所有开发者都应该注意的。

相关推荐
天竺鼠不该去劝架4 小时前
AI幻觉引发业务风险?企业智能体执行层隔离解决方案
经验分享
知产xiao_xin4 小时前
知识产权入门 —— 相关权(邻接权)
经验分享·笔记·知识产权
Regentsoft丽晶软件4 小时前
品牌方新品上市促销政策无法实时同步经销商,有没有支持总部-经销商-终端一站式的分销解决方案?
人工智能·经验分享·数据库架构
知产xiao_xin8 小时前
知识产权入门 —— 版权
经验分享·笔记·知识产权
Gaoweimi10 小时前
玻璃温室抗风等级怎么选?
经验分享
米饭不加菜11 小时前
一些常用模块简介
经验分享·笔记·嵌入式硬件
LavaLin0112 小时前
模拟图传横纹干扰原因分析与对策
经验分享·飞控·穿越机·图传
luj_176813 小时前
合法避税与投资评估实战指南
c语言·开发语言·网络·经验分享·算法
ychqsq13 小时前
144.扎根
经验分享·职场和发展
一直C13 小时前
Linux系统编程|信号进阶 + SystemV IPC(消息队列、共享内存)
linux·c语言·开发语言·算法·青少年编程·vim