简介 上一篇文章介绍 cobra 的时候提到了 viper,今天我们就来介绍一下这个库。 viper 是一个配置解决方案,拥有丰富的特性: 支持 JSON/TOML/YAML/HCL/envfile/Java properties 等多种格式的配置文件; 可以设置监听配置文件的修改 ...
简介 上一篇文章Go 每日一库之 viper中,我们介绍了 viper 可以监听文件修改进而自动重新加载。 其内部使用的就是fsnotify这个库,它是跨平台的。今天我们就来介绍一下它。 快速使用 先安装: 后使用: fsnotify的使用比较简单: 先调用NewWatcher创建一个监听器 然后调用监听器的Add增加监听的文件或目录 如果目录或文件有事件产生,监听器中的通道Events可以取出事 ...
2020-01-21 06:43 0 789 推荐指数:
简介 上一篇文章介绍 cobra 的时候提到了 viper,今天我们就来介绍一下这个库。 viper 是一个配置解决方案,拥有丰富的特性: 支持 JSON/TOML/YAML/HCL/envfile/Java properties 等多种格式的配置文件; 可以设置监听配置文件的修改 ...
简介 cobra是一个命令行程序库,可以用来编写命令行程序。同时,它也提供了一个脚手架, 用于生成基于 cobra 的应用程序框架。非常多知名的开源项目使用了 cobra 库构建命令行,如Kubernetes、Hugo、etcd等等等等。 本文介绍 cobra 库的基本使用和一些有趣的特性 ...
使用方法很简单: 1,先用fsnotify 创建一个监听器; 2,然后放到一个单独的goroutine 监听事件即可,通过channel的方式传递; package main import ( "log" "github.com/fsnotify ...
简介 今天我们来看一个很小,很实用的库go-homedir。顾名思义,go-homedir用来获取用户的主目录。 实际上,使用标准库os/user我们也可以得到这个信息: 那么为什么还要go-homedir库? 在 Darwin 系统上,标准库os/user的使用需要 cgo ...
简介 ini 是 Windows 上常用的配置文件格式。MySQL 的 Windows 版就是使用 ini 格式存储配置的。 go-ini是 Go 语言中用于操作 ini 文件的第三方库。 本文介绍go-ini库的使用。 快速使用 go-ini 是第三方库,使用前需要安装: 也可以使 ...
简介 在上一篇文章中,我们介绍了flag库。flag库是用于解析命令行选项的。但是flag有几个缺点: 不显示支持短选项。当然上一篇文章中也提到过可以通过将两个选项共享同一个变量迂回实现,但写起来比较繁琐; 选项变量的定义比较繁琐,每个选项都需要根据类型调用对应的Type ...
fsnotify是一个文件系统监控库, 它可以支持在如下系统上使用: Windows Linux BSD OSX 使用方法来自官方示例: 注意: 当一个文件重命名并移到了另一个目录, 这个文件将不会继续被监控, 除非你监控了这个文件所属的目录 ...
关于我 我的博客|文章首发 顾名思义,go-homedir用来获取用户的主目录。实际上,通过使用标准库os/user我们也可以得到内容,使用以下方式 标准库使用 控制台输出 Home dir: C:\Users\Administrator 为什么要用home-dir ...