golang 程序检查工具及手法

HW3000的收发程序 基于HW3000的手法程序,代码注释写的比较详细,通俗易懂 立即下载

代码检查工具

github地址及说明 https://github.com/golangci/golangci-lint

下载

linux/mac : go get -u github.com/golangci/golangci-lint/cmd/golangci-lint

mac:brew install golangci/tap/golangci-lint
    brew upgrade golangci/tap/golangci-lint
其他方法安装:
    # binary will be $(go env GOPATH)/bin/golangci-lint
    curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s -- -b $(go env GOPATH)/bin vX.Y.Z
    
    # or install it into ./bin/
    curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s vX.Y.Z
    
    # In alpine linux (as it does not come with curl by default)
    wget -O - -q https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s vX.Y.Z
    
    # binary will be $(go env GOPATH)/bin/golangci-lint
    curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s -- -b $(go env GOPATH)/bin vX.Y.Z
    
    # or install it into ./bin/
    curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s vX.Y.Z
    
    # In alpine linux (as it does not come with curl by default)
    wget -O - -q https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s vX.Y.Z
##### 检查是否安装成功
    golangci-lint version

# 有可能遇到的安装问题

一、src下面的bin路径

二、可能需要再安装目录用一次啊go install

三、环境变量需要加进去 例如在 /etc/profile 加上 export PATH = $PATH:$GOPATH/bin

使用

检查代码规范错误:golangci-lint run <文件路径>

检查代码行数超限等:golangci-lint --disable-all -E=gocyclo run

 

检查内存占用

可以使用 golang 自身 
go tool pprof <URL地址>

检查程序冲突

可以使用 golang 自身
go tool vet <>

检查channel占用

可以使用 golang 自身
go run/test -race <编译的包/.go文件>

后续有新的会继续补充 

qlbridge:一个golang表达式评估器和库,用于构建基于SQL查询引擎的功能 QLBridge-Go SQL运行时引擎 一个嵌入式SQL执行引擎,用作SQL或类似SQL的功能的库。 可入侵,添加数据源(“存储”可以是rest api或其他任何东西),并添加功能。 请参阅的用法,该MySQL mysql后端兼容mysql(Elasticsearch,Google-Datastore,Mongo,Cassandra,Files)。 QLBridge的功能和目标 表达式引擎,用于评估单个表达式 对您的数据执行sql查询,可嵌入,未与存储层耦合 通过自定义go功能扩展VM,提供丰富的基本功能库 提供示例后端(csv,elasticsearch等) 方言 SQL 具有更多DSL过滤器的FilterQL(just Where子句), 简单表达式 表达评估引擎示例 这些表达式可以在应用程序中独立使用。 但是,相同的表达式可能是列,SQL中的group-by子句。 func main () { // Add a custom function to the VM to make available to expression language expr . FuncAdd 立即下载

相关推荐

SAP中成本估算没有找到工艺路线消息处理实例

在针对成品的标准成本核算处理过程中,系统中会经由设定好的策略来收集成品相关成本组成,最终计算出产成品的标准成本。关于成本组成,可以归纳为三个基本要素,料,工,费。即标准成本就是要知道,生产一件成品,需要消耗多少钱的原材料?消耗多少钱的人工?以及其它的间接消耗? 某日,接到CO同事的反馈,在用CK11N做产成品标准价格核算时,提示没有工艺路线确定,但该消息为绿灯,可以通过。基于业务上的谨慎,提出分析。 从提示可以看出问题与工艺路线有关。因为,成品工艺路线中设定有成品生产所耗工时,所以,在计算产成品标准

专注SAP应用技术文章写作,致力于拉近用户与系统间的距离; 6280

《重构:改善既有代码的设计》读书笔记(上)

重构:改善既有代码的设计

行走 1477

SIGIR 2026:信息检索前沿技术与投稿指南

信息检索(Information Retrieval, IR)是计算机科学中处理大规模数据检索的核心技术,其基本原理是通过算法模型从海量数据中高效提取相关信息。随着深度学习的发展,神经信息检索(Neural IR)和多模态检索成为研究热点,如稠密检索模型(DPR)和跨模态预训练(CLIP)等技术的应用显著提升了检索精度。这些技术不仅在学术领域具有重要价值,还在电商搜索、医疗检索等实际场景中展现出巨大潜力。SIGIR作为信息检索领域的顶级会议,汇聚了全球顶尖学者和工业界专家,是展示最新研究成果的重要平台。本文

weixin_29189363的博客 289

android知识整理

1204

ros1 Noetic下运行cartographer算法进行2d建图

最近的工作重点放在机器狗的二次开发上,项目的需求是要升级机器狗的slam算法和导航避障算法,slam拟采用激光与视觉融合算法,激光slam就使用最为流行和实用的cartoghper算法。在这过程中遇到好多坑,希望看到这篇博客的人能少走弯路吧。我用的仿真机器人是wpr_simiulation。首先复制一份demo_revo_lds.launch文件和revo_lds.lua文件,修改成下面的样子。my_test.lua文件,base_link就是机器人的坐标系。下载与安装的博客有很多,我推荐。

sun5739的博客 1547

STM32 野火MINI 用FontCvtST.exe 生成.c文件 写汉字到文本框 按钮上

STM32 野火MINI 用FontCvtST.exe 生成.c文件 写汉字到文本框 按钮上 参考了好多大神博客,自己写的过程中发现,还有些小细节。 一、打开Notepad写需要的字 另存为 UTF-16LE 也就是Unicode。 二、打开FontCvtST转 删掉所有字 读入test.txt里的字 选择刚才的test.txt 另存为.c文件 改个英文名 复制到RTOS的例程文件夹下 三、打开GUIBuilder 画一个这样的 保存之前要注意路径配置要在当前位置,否则存不上 生成的D

weixin_41376117的博客 1935

ctf 逆向 回顾与总结

记录了我的逆向入门过程。

weixin_42100211的博客 7810

通达信量化打板选股指标公式源码副图

X_2:=3*LOW;X_13:=4;X_14:=3;X_15:=2;X_16:=1;

gpzb7的博客 4485

仿QQ聊天程序

仿QQ聊天程序 转载请标明出处:牟尼的专栏 http://blog.youkuaiyun.com/u012027907 一、设计内容及要求 1.1综述 A.系统概述 我们要做的就是类似QQ这样的面向企业内部的聊天软件,基本功能和QQ类似。首先,系统分为两大部分,第一部分是客户端,是用户使用的部分,第二部分就是服务器,所有的客户端都是通过服务器来进行用户身份验证及聊天转接的。客户端提供主要的界面及服务

牟尼的专栏 1万+

【Flutter 问题系列第 16 篇】如何防止软键盘弹出后顶掉内容

Flutter 如何防止软键盘弹出后顶掉内容

“Allen Su”的博客 3317

[Dify实战] 在 Dify 官网环境使用 File Translator 插件实现 Office 文档翻译(支持 DOCX/XLSX/PPTX)

摘要:Dify平台的FileTranslator插件可实现Office文档一键翻译,保留原格式和结构。该插件支持Word、Excel、PPT等文件格式,无需额外密钥,直接复用Dify配置的大模型。安装后,用户可在Workflow中调用插件,设置目标语言等参数完成翻译。输出文件自动命名,保留原格式。适用于跨国协作、海外营销等场景,显著提升多语言办公效率。该插件简化了文档翻译流程,是企业用户和开发者的实用工具。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 544

Go语言RPC编程手法

此时,Go语言的RPC框架会自动帮你完成从网络上接收RPC请求、解码RPC请求参数、调用本地函数、编码函数返回结果、发送函数返回结果等繁琐的工作,你只需要关注业务逻辑即可。比如,你可以使用Go语言的反射功能来动态注册RPC函数,或者直接使用网址作为RPC服务器的地址,这都是可能的。Go让RPC的实现变得如此自然,让你感觉到它就像是Go语言的一部分,而不是粘贴上去的一块儿。在客户端,则需要创建一个到RPC服务器的连接,然后通过名字来调用在RPC服务器上注册的函数。的函数,你可以用它来注册你的RPC服务。

rit8432499的博客 339

YOLOv11改进有效系列目录 - 包含卷积、主干、检测头、注意力机制、Neck上百种创新机制 - 针对多尺度、小目标、遮挡、恶劣天气等问题

在一些特定情况下,目标检测任务由于多种因素的影响,变得更加复杂和困难。以下是几类常见的困难目标检测场景:1. 小目标检测定义:小目标检测是指当目标在图像中的占比非常小时,模型需要准确识别和定位这些目标。典型场景包括远程监控、卫星图像分析等。挑战1. 低分辨率:由于目标在图像中占据像素较少,细节缺失,特征提取难度增加。2. 特征不足:小目标缺乏明显的形状和纹理特征,容易被复杂背景淹没。3. 检测难度大:由于小目标与背景之间的对比度较低,误检的几率上升。4. 数据不平衡。

qq_64693987的博客 4万+

Golang图片码+压缩伪装+远程调用组合拳

Part1 主要免杀思路 首先要将程序进行分离,将shellcode隐藏进图片里,再远程调用图片里的shellcode,达成getshell的目标。 同时还要把调用shellcode的执行程序进行伪装,伪装成图片或者其他格式,让目标执行文件时自动拉取shellcode图片,从而上线 本篇文章使用了开源项目 https://github.com/Hangingsword/HouQing 此处举例用的是Hou Qing大佬基于Golang语言编写的免杀项目 Part2 具体过程及手法 我们要先保..

土豆的博客 7万+

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

蓝易云 - 初探Go语言RPC编程手法

此时,Go语言的RPC框架会自动帮你完成从网络上接收RPC请求、解码RPC请求参数、调用本地函数、编码函数返回结果、发送函数返回结果等繁琐的工作,你只需要关注业务逻辑即可。比如,你可以使用Go语言的反射功能来动态注册RPC函数,或者直接使用网址作为RPC服务器的地址,这都是可能的。Go让RPC的实现变得如此自然,让你感觉到它就像是Go语言的一部分,而不是粘贴上去的一块儿。在客户端,则需要创建一个到RPC服务器的连接,然后通过名字来调用在RPC服务器上注册的函数。的函数,你可以用它来注册你的RPC服务。

高性价比服务器就选:蓝易云 526

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

如何让Go服务内存占用降低60%?这3种优化手法你必须掌握

掌握Go内存优化技巧,有效降低服务内存占用。通过对象复用、切片预分配和逃逸分析优化,提升性能并减少GC压力,适用于高并发场景。三种实用方法助你实现内存降低60%,值得收藏。

codeink的博客 988

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

给Go程序加入编译时间等信息

给Go程序加入编译时间等信息 先看效果 $./myapp -v GitCommitLog=d97d098e5bb4ad38a2a7968f273a256e10a0108f mod bininfo comment GitStatus=cleanly BuildTime=2019.10.26.194341 GoVersion=go version go1.13 darwin/amd64 runtime=darwin/amd64 myapp 是一个演示用的 demo 程序,输入 -v 参数运行时,打印出程序的一

猛犸象 1306

GO语言核心30讲 实战与应用 (基本规则,测试手法,Mutex,条件变量,原子操作)

原站地址:Go语言核心36讲_Golang_Go语言-极客时间

1469

给Go程序加入编译版本时间等信息

先看效果 $./myapp -v GitCommitLog=d97d098e5bb4ad38a2a7968f273a256e10a0108f mod bininfo comment GitStatus=cleanly BuildTime=2019.10.26.194341 GoVersion=go version go1.13 darwin/amd64 runtime=darwin/amd64 ...

q191201771的专栏 1212

go语言打印日期_给Go程序加入编译版本时间等信息

点击上方蓝色“Go语言中文网”关注我们,领全套Go资料,每天学习Go语言先看效果 $./myapp -vGitCommitLog=d97d098e5bb4ad38a2a7968f273a256e10a0108f mod bininfo commentGitStatus=cleanlyBuildTime=2019.10.26.194341GoVersion=go version go1...

weixin_39572288的博客 335

25 | 更多的测试手法

在本篇文章中,假设已经理解了上一篇文章涉及的内容。因此,在这里围绕着几个可以被go test命令接受的重要标记,进一步地阐释了功能测试和性能测试在不同条件下的测试流程。其中,比较重要的有最大 P 数量的含义,-cpu标记的作用及其对测试流程的影响,针对性能测试函数的探索式执行的意义,测试函数执行时间的计算方法,以及-count标记的用途和适用场景。当然了,学会怎样并发地执行多个功能测试函数也是很有必要的。这需要联合运用-parallel标记和功能测试函数中的t.Parallel方法。

qq_37756660的博客 902

go 二进制程序守护_Blackrota,一个Go开发的高度混淆的后门

文章转载自Netlab三六零 概述近日,国内有关安全团队捕获到一个用 Go 语言编写的恶意后门程序,该程序利用 Docker Remote API 未授权访问漏洞来传播。由于它上线的 C2 为 blackrota.ga ,我们把它命名为 Blackrota。Blackrota 的后门程序目前只有 Linux 版,是 ELF 文件格式,支持 x86和x86-64 两种 CPU ...

weixin_39776344的博客 476

[golang]让golang支持泛型编程的一种方案

本博客原创博文版权所有 @Ally vipally@gmail.com 仅供交流学习使用用于商业用途请联系原作者  转载请注明出处:http://blog.sina.com.cn/ally2014 总所周知,golang现在不支持泛型编程,对于习惯了C++泛型编程思想的程序员来说无疑是一个硬伤。 虽然golang interface{}多少可以满足一些泛型需求,但是无论在效率和编程手法上,都

vipally的专栏 3191

基于Go语言的恶意软件通过Redis配置滥用向Linux主机部署XMRig挖矿程序

网络安全预警:Redis服务器遭新型挖矿攻击,旧版微软认证协议被利用 网络安全研究人员发现针对公开Redis服务器的Linux挖矿攻击“RedisRaider”,其通过Redis命令注入恶意定时任务,投放XMRig挖矿程序,并利用反取证技术逃避检测。同时,Guardz曝光攻击者滥用微软旧版认证协议BAV2ROPC,绕过MFA针对管理员账户发起高频自动化攻击。建议禁用旧版协议并加强访问控制以降低风险。

seoppg的博客 800

Golang恶意软件攻防解析:从跨平台攻击到防御策略

在网络安全领域,恶意软件的开发语言选择直接影响攻击的隐蔽性和效率。从技术原理上看,编程语言的特性决定了恶意代码的部署方式和反分析能力。Golang凭借其静态编译和跨平台优势,为攻击者提供了高效的武器化开发能力,这在安全攻防中具有重要的技术价值。攻击者利用Golang的并发模型和丰富标准库,能够快速实现跨平台的恶意软件部署,并通过混淆技术增强反检测能力。在实际应用场景中,这类恶意软件常涉及进程注入、隐蔽通信等关键技术,对传统安全分析方法提出了新的挑战。本文通过分析Golang恶意软件的开发模式和常见技术点,探

diyudong4681的博客 454

go 打印 bool_给Go程序加入编译版本时间等信息

先看效果$./myapp -v GitCommitLog=d97d098e5bb4ad38a2a7968f273a256e10a0108f mod bininfo comment GitStatus=cleanly BuildTime=2019.10.26.194341 GoVersion=go version go1.13 darwin/amd64 runtime=darwin/amd64mya...

weixin_35524152的博客 276
上一篇: docker 与Dockerfile 的安装使用及其命令
下一篇: Dockerfile 使用说明
Chelydra
博客等级 码龄10年 5粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值