巧用终端,每天节省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%不是问题!

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

相关推荐
·薯条大王2 小时前
经济实惠玩云服务器|一台云服务器多人共用,子账号配置教程
java·linux·运维·服务器·汇编·c++·python
上海广测检测科技有限公司3 小时前
打印机CCC认证详解:产品范围界定与安全及电磁兼容测试要求解读
经验分享
不一样的故事12611 小时前
芯片设计是一个高度复杂、分工精细的系统工程
数据结构·经验分享
NoteStream12 小时前
【C语言基础】分支和循环(上)
c语言·开发语言·c++·经验分享·笔记·算法·c#
大明王朝举重冠军14 小时前
自顶向下建模之建模后的模型检验
经验分享
GoppViper16 小时前
UGC内容GEO化策略:清洗、分类与地理挖掘实战
经验分享
杨连江16 小时前
生态位、容错率与生存策略:动物界的“从容”本质解析
经验分享
weixin_5372170616 小时前
暑假作业资源合集
经验分享
老花眼猫16 小时前
数学艺术图案画-曼陀罗(78)
c语言·经验分享·青少年编程·课程设计