tnblog
首页
视频
资源
登录

Pet CLI代码片段管理器

5469人阅读 2021/3/24 16:56 总访问:3470440 评论:0 收藏:0 手机
分类: linux

Pet CLI代码片段管理器

Pet应用的介绍


是用Go编写简单的命令行摘要管理器。

Pet应用的安装

Window系统

  1. choco install pet

Ubuntu

  1. wget -q https://github.com/knqyf263/pet/releases/download/v0.3.6/pet_0.3.6_linux_amd64.deb && apt -qq install ./pet_0.3.6_linux_amd64.deb

Centos

  1. wget https://github.com/knqyf263/pet/releases/download/v0.3.6/pet_0.3.6_linux_amd64.rpm
  2. rpm -i pet_0.3.6_linux_amd64.rpm

验证是否安装成功

  1. # pet version && pet --help
  2. pet version 0.3.6
  3. pet - Simple command-line snippet manager.

尝试列表功能

  1. pet list
  2. # 由于尚未将片段添加到库中,因此列表为空。

尝试搜索功能

  1. # pet search test
  2. sh: fzf: command not found
  3. # 我们发现这里抛出了一个错误。


Pet列出了摘要库,并允许您从列出的摘要项中进行交互选择。Pet并未内置此列表和项目选择功能,并且此交互性取决于另一个称为选择器的CLI工具。Pet可以很容易地检测到名为fzf或peco的选择器工具的存在。这些选择器工具提供列表,提供项目选择功能以及其他参数提示。片段管理器以及选择器对于从库中创建,编辑,列出,搜索和挑选片段很有用。

安装fzf

Window系统

  1. # 下载 https://github.com/junegunn/fzf/releases/download/0.26.0/fzf-0.26.0-windows_amd64.zip

Ubuntu

  1. wget -q http://archive.ubuntu.com/ubuntu/pool/universe/f/fzf/fzf_0.20.0-1build1_amd64.deb && apt -qq install ./fzf_0.20.0-1build1_amd64.deb

Centos

  1. wget https://github.com/junegunn/fzf/releases/download/0.26.0/fzf-0.26.0-linux_amd64.tar.gz
  2. tar zxvf fzf-0.26.0-linux_amd64.tar.gz
  3. mv fzf /usr/local/bin/

Git

  1. git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
  2. ~/.fzf/install

验证是否安装成功

  1. fzf --version
  2. # 再次运行搜索功能
  3. pet search test
  4. # 提示将变为>并显示0/0。

Pet的基本运用


让我们遍历核心命令来创建和管理一些简单的代码片段。

Kubernetes集群中的列表上下文

运行kubectl命令列出集群上当前的所有ConfigMap和Secrets

  1. kubectl get cm,secrets --all-namespaces

在不运行其他命令的情况下,将最后一个命令添加到您的代码段库中(Description可以描述该命令):

  1. # pet new "!!"
  2. pet new "kubectl get cm,secrets --all-namespaces"
  3. Command> kubectl get cm,secrets --all-namespaces
  4. Description> get cm,secrets

您现在有了一个新的代码段

  1. pet list

参考代码段并运行它:

  1. pet exec

修改存储过的命令

  1. pet edit

Pet会找到与您的终端关联的常用编辑器。对于此片假名,共有四位编辑。选择nano或任何您喜欢的编辑器。

创建代码片段时,还有一个额外的—tag标记将代码与代码片段相关联。出现提示时,添加一些描述文字并添加标签tag

  1. pet new "kubectl get pods -n kube-system" --tag

要快速搜索并运行此代码段,请输入:

  1. pet exec -q=plane

然后只需按Enter键即可选择单个选项。如果您可以使所有搜索标签在您的库中唯一,则可以基于短标签快速查找单个片段。

让命令更加简短

创建bash函数并将其附加到~\bashrc

  1. echo 'function pex() { pet exec -q=$@; }' >> ~/.bashrc

加载新的.bashrc脚本,以使该功能可用于此终端

  1. source ~/.bashrc

如果您知道自己的唯一标签,则此新命令/功能会更快:

  1. pex plane

备份

  1. pet sync
  2. # 更多可以了解 https://github.com/knqyf263/pet#sync

Kubernetes的Toml


那么Pet和Snippet管理与Kubernetes有什么关系呢?

如您所知,开发人员喜欢收集备忘单。这些工作表的设计紧凑,易于查找,易于参考,并包含所有尚未提交或永远不会提交给您的内存的命令。该宠物片段库本质上是一种表。它存储在应用程序配置下的目录主目录中。

  1. ls ~/.config/pet

当前的片段位于snippet.toml文件中(默认也是该文件):

  1. cat ~/.config/pet/snippet.toml

Pet知道可以通过其配置引用此文件:

  1. cat ~/.config/pet/config.toml

对于这种情况,我们可以参考了Kubernetes toml,并将大多数技巧手动转换为Pet片段。从Git gist下载公共文件:

  1. wget -P ~/.config/pet/ https://gist.githubusercontent.com/javajon/131a7f26c11a03d741e6bcefb857c496/raw/kubectl-snippet.toml

收集了几十个片段:

  1. cat ~/.config/pet/kubectl-snippet.toml | grep "description ="

将此替代库应用于Pet:

  1. sed -i 's/snippet.toml/kubectl-snippet.toml/g' ~/.config/pet/config.toml

现在我们可以参考该示例

  1. pet list

欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739

评价
这一世以无限游戏为使命!
排名
2
文章
635
粉丝
44
评论
93
docker中Sware集群与service
尘叶心繁 : 想学呀!我教你呀
一个bug让程序员走上法庭 索赔金额达400亿日元
叼着奶瓶逛酒吧 : 所以说做程序员也要懂点法律知识
.net core 塑形资源
剑轩 : 收藏收藏
映射AutoMapper
剑轩 : 好是好,这个对效率影响大不大哇,效率高不高
ASP.NET Core 服务注册生命周期
剑轩 : http://www.tnblog.net/aojiancc2/article/details/167
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术