Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/88250/gulu
⭕ Go 语言常用工具库,这个轱辘还算圆!
https://github.com/88250/gulu
golang-commons golang-utils
Last synced: 3 days ago
JSON representation
⭕ Go 语言常用工具库,这个轱辘还算圆!
- Host: GitHub
- URL: https://github.com/88250/gulu
- Owner: 88250
- License: other
- Created: 2019-11-29T11:47:13.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2024-06-12T03:58:53.000Z (6 months ago)
- Last Synced: 2024-11-24T22:26:54.676Z (17 days ago)
- Topics: golang-commons, golang-utils
- Language: Go
- Homepage: https://ld246.com/tag/gulu
- Size: 225 KB
- Stars: 154
- Watchers: 5
- Forks: 34
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- my-awesome - 88250/gulu - commons,golang-utils pushed_at:2024-12 star:0.2k fork:0.0k ⭕ Go 语言常用工具库,这个轱辘还算圆! (Go)
- awesome-seeds - gulu
README
## 💡 简介
[Gulu](https://github.com/88250/gulu) 是一款 Go 语言常用工具库。
欢迎到 [Gulu 官方讨论区](https://ld246.com/tag/gulu)了解更多。同时也欢迎关注 B3log 开源社区微信公众号 `B3log开源`:
![b3logos.jpg](https://b3logfile.com/file/2020/08/b3logos-032af045.jpg)
## ✨ 功能
### 文件操作 `gulu.File`
* 获取文件大小
* 判断路径是否存在
* 判断文件是否是图片
* 按内容判断文件是否是可执行二进制
* 判断文件是否是目录
* 复制文件
* 复制目录### Go 语言 `gulu.Go`
* 获取 Go API 源码目录路径
* 判断指定路径是否在 Go API 源码目录下
* 获取格式化工具名 ["gofmt", "goimports"]
* 获取 $GOBIN 下指定可执行程序名的绝对路径### 日志记录 `gulu.Log`
* 提供可指定日志级别的日志记录器
### 网络相关 `gulu.Net`
* 获取本机第一张网卡的 IP 地址
* 获取本机第一张网卡的 MAC 地址### 操作系统 `gulu.OS`
* 判断是否是 Windows
* 判断是否是 Linux
* 判断是否是 Darwin
* 获取当前进程的工作目录
* 获取用户 Home 目录路径### panic 处理 `gulu.Panic`
* 包装 recover() 提供更好的报错日志格式
### 随机数 `gulu.Rand`
* 随机字符串
* 随机整数### 返回值 `gulu.Ret`
* 提供普适返回值结构
### Rune `gulu.Rune`
* 判断 rune 是否为数字或字母
* 判断 rune 是否为字母### 字符串 `gulu.Str`
* 字符串是否包含在字符串数组中
* 字符串忽略大小写批量查找替换
* 字符串忽略大小写批量查找环绕
* 求最长公共子串
* 考虑 Rune 的字符串指定长度子串### Zip 压缩解压 `gulu.Zip`
* Zip 压缩和解压
## 🗃 案例
* [Pipe](https://github.com/88250/pipe):一款小而美的博客平台,专为程序员设计
* [Wide](https://github.com/88250/wide):一款基于 Web 的 Go 语言 IDE,随时随地玩 golang
* [BND](https://github.com/88250/baidu-netdisk-downloaderx):一款图形界面的百度网盘不限速下载器,支持 Windows、Linux 和 Mac
* [协慌网](https://routinepanic.com):专注编程问答汉化
* [链滴笔记](https://github.com/88250/liandi):一款桌面端笔记应用,支持 Windows、Mac 和 Linux## 💝 贡献
Gulu 肯定有一些不足之处:
* 代码不够优美
* 文档不够清晰
* 功能不够完善
* 可能存在缺陷
* ……希望大家能和我们一起来完善该项目,无论是提交需求建议还是代码改进,我们都非常欢迎!
## 🏘️ 社区
* [讨论区](https://ld246.com/tag/gulu)
* [报告问题](https://github.com/88250/gulu/issues/new/choose)## 📄 授权
Gulu 使用 [木兰宽松许可证, 第2版](http://license.coscl.org.cn/MulanPSL2) 开源协议。
## 🙏 鸣谢
* [The Go Programming Language](https://golang.org)