随笔分类 - 奇淫技巧
摘要:当需要比较两个`[]byte`数组是否相等时有好几种方案,下面可以看出前三种方案都是优化过的,效率高的方案。 ```go package main import ( "bytes" "crypto/rand" mr "math/rand" "testing" ) func StringEqual(n
阅读全文
摘要:项目 项目仓库:goOpenCv 连连看 麻将 单机版麻将 腾讯麻将小程序 总结 通过学习opencv图像匹配,完成游戏作弊,感觉没用的知识又增加了。
阅读全文
摘要:下载工具 Charles PC微信 安装证书 设置代理 微信使用代理 分析抓包 抓到需要的包 复制curl命令,用于模拟请求,和分析后编写代码用
阅读全文
摘要:原始需求 习惯用TortoiseGit查看git仓库信息和历史日志,但这个工具只支持window,我希望linux也能用 虽然有其他linux的GUI的git工具,但我用到的linux基本都是无界面版本,命令行的话直接git命令呗 还有就是映射linux目录到window上,这样就可以在window
阅读全文
摘要:Github地址 前言 最近有需要研究阴历和阳历互相转换的问题。因此找到两个库carbon和solarlunar 但是感觉计算出来的总是不太放心,而且也会占用计算资源。我的想法是通过接口获取现成的阴历和阳历数据,存到本地数据库,这样查询的时候一步到位。 方案 我通过百度搜索万年历,抓取网页请求得到百
阅读全文
摘要:前言 由于redis的keys命令是线上禁用,所以就有了SCAN、SSCAN、HSCAN和ZSCAN四个命令。 但是这四个命令也不是每次返回全部匹配结果,因此需要一遍遍执行下去,而且每次返回的cursor要作为下一个的参数。 因此查找也不太方便,我写了一个简单的方法,用来查找scan的所有结果。关于
阅读全文
摘要:前言 由于现在需要部署nginx的docker,希望nginx配置文件里面有关server_name在启动容器前动态修改。 但是由于nginx的配置文件不支持使用环境变量。网上找了好些方案,最终选择使用envsubst的方式改写nginx配置文件。 学习envsubst envsubst就是将环境变
阅读全文
摘要:有时候需要时间和时间戳之间进行转换,以及获取当前时间和时间戳。 虽然功能很小,但是也不想每次去网页上搜一搜这么麻烦,因此写了一个小工具。 源码鉴赏: package main import ( "fmt" "os" "strconv" "strings" "time" ) func main() {
阅读全文
摘要:经常用cmder会发现输入git后按tab键会自动提示git命令的子命令,非常的方便。 最近我在用go-zero框架,但是每次敲goctl命令都需要翻一下笔记。 因此我想让cmder支持goctl命令的自动提示功能,最终发现cmder\vendor\clink-completions\git.lua
阅读全文
摘要:前言 很多时候我们需要发送邮件,比如定时任务,比如邮件验证码等等。 各大编程语言都可以实现发送邮件功能,但还是太麻烦了,所以通过tcpdump抓包发现smtp发送邮件原理还是很简单嘛。 所以就想着能不能通过shell搞定,这样在Linux平台下就很通用,不必准备各种安装环境啥的。 鉴赏代码 该脚本需
阅读全文
摘要:前言 有时候需要判断系统是否有修改过时间,最简单的方法就是获取当前时间A,然后sleep X秒,然后获取 时间B,如果 时间B - 时间A ≠ X,那就表示系统时间被修改过。 上面方案是可行的,但时间A和延时X在进程重启时不太好判断系统时间是否修改过时间。 已经有接口可以获取系统运行秒数,那么可以用
阅读全文
摘要:前言 我们内部测试的http服务器很多时候证书都是没有经过第三方认证的,我们发送http请求基本上都是忽略证书认证。 我总结了一下常用编程语言使用http请求时忽略证书认证的代码片段,记录一下下。 代码 go语言 func httpPost(url, body string) ([]byte, er
阅读全文
摘要:前言 之前写过使用用户名密码,以及扫描二维码方式验证后台登录ssh的文章:【点击跳转】。 但是这样还是不太保险,也存在被人利用的情况,因为别人破解你的后台你压根不知道。因此想到使用邮件验证码来提高验证服务器登录ssh的安全性。 如果有人破解了你ssh的用户名和密码,那么就会发送一个验证码邮件,当你在
阅读全文
摘要:1. 最近用git pull几个大项目,总是出现如下错误: error: RPC failed; curl 56 GnuTLS recv error (-9): A TLS packet with unexpected length was received. fatal: The remote e
阅读全文
摘要:前言 服务器重启进程时总会提示端口已经被绑定的报错,直到重试好几次才能重启成功。 这是因为端口尚未完全关闭的情况,这时如果不设置端口重用,则无法完成绑定,因为端口还处于被别的套接口绑定的状态之中。 SO_REUSEADDR 简介 允许启动一个监听服务器并捆绑其众所周知端口,即使以前建立的将此端口用做
阅读全文
摘要:自说自话 像我这样每天晚上睡觉关机的人不知道有多少,反正我每天都有关机的需求。因此我特别讨厌长按关机键进行关机,感觉浪费我好几秒的生命。 因此我开发了这款APP,主要是自用,有需求的人可以下载玩玩。 查看源码:【跳转酷安】 使用方法 安装后点开会跳转到无障碍那里,需要开启服务功能,因为本APP是调用
阅读全文
摘要:前言 关于【端口转发】这篇文章挺全面的,共有8种场景,研究了一下很多时候还是挺方便得。 但是对于我来说经常用到的就是服务器只提供了本地端口服务器,想要远程访问很不方便。比如部署了“127.0.0.1:3306”的mysql服务,我只能用命令行了。 我又不想修改测试环境,毕竟要和发布环境保持一致。所以
阅读全文
摘要:前言 很多时候我们都需要进程单例运行,当再次运行程序时检查到已有程序在运行可以做特别的操作,比如置顶已运行的程序,比如当前程序提示一下就退出。 最简单方案是打开进程创建一个文件,程序结束时删除文件,当第二个程序运行时判断该文件存在则认为已有程序运行。问题是程序异常退出没有删除那个文件就GG了。 还有
阅读全文