刷新
go语言实现终端里的倒计时

博主头像 最近在更新系统的时候发现pacman的命令行界面变了,我有很久没更新过设备上的Linux系统了,所以啥时候变的不好说。但这一变化成功勾起了我的好奇心。新版的更新进度界面如下: 新的更新进度界面能同时显示多个进度条,而且并没有依靠ncurses这个传统的TUI库。为啥我能断定没有用ncurses呢,因 ...

万字解析Golang基于桶思想的map实现原理

博主头像 0、引言 相信大家对Map这个数据结构都不陌生,像C++的map、Java的HashMap。各个语言的底层实现各有不同,在本篇博客中,我将分享个人对Go的map实现的理解,以及深入源码进行分析,相信耐心看完一定会收获不少。 1、宏观结构 相信大家对于map的基本使用都不陌生,Golang中的map是 ...

go~数组和切片的区别

博主头像 下面通过一段代码来说明一下,数组和切片在go语言中的区别 在Go语言中,`hash[:]` 这个语法是**数组切片操作**,具体含义如下: ### 代码解析: ```go hash := md5.Sum(data) // 返回类型是 [16]byte 的数组 hashString := hex.En ...

项目升级golang版本

博主头像 有些时候需要对老项目进行golang版本升级,已便使用更新的功能 1、前置条件 需要安装好要升级的golang版本,安装方式有两种,一种是本地直接安装,另一种是安装版本管理工具然后再安装go 安装方式1:安装教程链接 安装方式2:安装教程链接 2、升级 如果安装了版本管理工具就切换到所需要升级的go ...

Go红队开发—文件操作

博主头像 目录文件操作创建目录创建文件获取File信息文件重命名删除文件打开关闭文件判断文件是否存在判断文件是否有读取权限复制文件Read读取ReadFull读取ReadAtLeast读取ReadAll读取bufio读取Write写入WriteFile快速写入临时文件目录下载文件文件指针操作修改文件权限/拥有 ...

Go红队开发—编解码工具

博主头像 目录开启一个项目编解码工具开发Dongle包Base64编解码摩斯密码URL加解密AES加解密MD5碰撞工具开发 开启一个项目 这作为补充内容,可忽略直接看下面的编解码: 一开始用就按照下面的步骤即可 1.创建一个文件夹,你自己定义名字(建议只用英文名字),你的项目文件夹 2.在这个文件夹里创建一个 ...

Go红队开发—语法补充

博主头像 之前有师傅问这个系列好像跟红队没啥关系,前几期确实没啥关系,因为这都是进行红队工具开发的前置知识点,对于我个人强迫症而言只是想让这个系列更加完善而已,所以前置知识也加进去了,有GO只是的大佬可以等下一期哈!感谢支持。 ...

Go红队开发—并发编程

博主头像 目录并发编程go协程chan通道无缓冲通道有缓冲通道创建⽆缓冲和缓冲通道等协程sync.WaitGroup同步Runtime包Gosched()Goexit()区别同步变量sync.Mutex互斥锁atomic原子变量SelectTicker定时器控制并发数量核心机制并发编程阶段练习重要的细节端口扫 ...

Go实现动态开点线段树

博主头像 1、线段树介绍 线段树是一种用于高效处理区间查询和区间更新的数据结构,当我们需要解决一个频繁更新区间值的问题的时候,就可以采用线段树的结构进行解决。线段树的核心思想是将区间分为多个子区间进行管理,越往下区间范围越小,根节点表示整个线段树能表示的区间。 本文记录使用Go实现动态开点线段树的方式,该模板 ...

Go红队开发—基础语法入门

博主头像 目录基础语法语法框架数据类型类型转换变量var定义常量iota 枚举数组切片结构体结构体方法指针map类型转换导入包字符串strings包字符拼接ContainsReplace更多函数解释输入输出字符串格式化fmt:Scanf、Scan、ScanlnScanfScanScanlnfmt:Printl ...

使用Go复刻skiplist核心功能

博主头像 0、引言 正好做LC每日一题要求实现一个跳表,于是学习了redis的扩展skiplist,并使用Go进行复刻学习。学习参考了文章:Redis内部数据结构详解(6)——skiplist - 铁蕾的个人博客 因为作者能力有限,本文只是对跳表的核心功能:创建节点与跳表、插入节点、删除节点、获取节点rank ...

Go日期时间处理工具Carbon

博主头像 一个轻量级的、易于使用的、语义智能的日期时间处理库,支持链式调用,已被 [awesome-go](https://github.com/yinggaozhen/awesome-go-cn#日期和时间) 收录,现已经捐赠给了 [dromara](https://dromara.org/) 组织 ...

ko Easy Go 容器构建

ko 是一个适用于 Go 应用程序的简单、快速的容器镜像构建器 官方网站 镜像包含单个go应用程序,且对os基础镜像没有太多的依赖 ko 通过本地机器上执行go build来构建镜像,因此无需安装docker。非常适合轻量级CI/CD用例 安装 安装 示例 环境变量 KO_DOCKER_REPO: ...

goland2024如何安装?附安装包和激活方式

博主头像 前言 大家好,我是小徐啊。goland是我们开发Go语言时的常用的开发工具,功能强大,今天,小徐就来介绍下如何安装和获取激活方式。文末附获取方式。 如何安装和激活goland 首先,我们双击下goland2024安装包,开始安装。 然后,我们点击下运行按钮。 然后,我们点击下一步按钮。 然后,我们选 ...

<1···345···7>