2020-05-08
-
《大学》中列出“格物、致知、诚意、正心、修身、齐家、治国、平天下”的儒家修身八条目
-
Mac-显示隐藏文件-快捷键与命令行
command+shift+. -
Go 版本管理器 gvm
https://github.com/voidint/g -
Pika is a nosql compatible with redis, it is developed by Qihoo's DBA and infrastructure team
https://github.com/Qihoo360/pika
Pika是与Redis兼容的Nosql,由奇虎DBA和基础架构团队开发
Pika是一项持久的巨大存储服务,可与绝大多数redis接口(详细信息)兼容,包括字符串,哈希,列表,zset,设置和管理接口。由于存储了海量数据,redis可能会遇到容量瓶颈,而pika就是为解决它而诞生的。除了巨大的存储容量外,pika还通过slaveof命令支持主从模式,包括完全同步和部分同步。您还可以将pika与twemproxy或codis一起使用(pika支持codis中的数据迁移,感谢left2right和fancy-rabbit),用于分布式Redis解决方案 -
Linux和Unix退出代码
获取命令的退出代码// 退出代码 echo $? // 标准的退出代码是 0 成功的代码 // 任何数字从1到则255是其他任何东西。 // 在脚本中使用退出代码 #!/bin/bash cat file.txt if [ $? -eq 0 ] then echo "The script ran ok" exit 0 else echo "The script failed" >&2 exit 1 fi // 标准错误代码 1 -常见错误 2 -滥用shell内置函数(根据Bash文档) 126 -调用的命令无法执行 127 - “找不到命令” 128 -退出参数无效 128+n -致命错误信号“ n” 130 -脚本被Control-C终止 255\* -退出状态超出范围 // 取消退出状态 禁止退出状态 除0状态之外的任何其他操作都是不可取的。 为了抑制错误消息,任何输出到标准错误的信息都会发送到/dev/null using 2>/dev/null。 #!/bin/bash cat 'doesnotexist.txt' 2>/dev/null || exit 0
go源码剖析
go tool compile -S main.go
https://www.bookstack.cn/
gotty
gotty -p 10000 -w zsh open http://localhost:10000
2020-05-09
-
Run VS Code on a remote server.
在远程服务器上运行VS Code
https://github.com/cdr/code-server -
通过SSH在任何服务器上运行VS Code。
https://github.com/cdr/sshcode
sshcode是一个CLI,可通过SSH 自动安装和运行代码服务器。
它会自动上传您的扩展名和设置,因此您可以无缝地将远程服务器用作VS Code主机。 -
一款轻量级、高性能、功能强大的内网穿透代理服务器
一款轻量级、高性能、功能强大的内网穿透代理服务器。支持tcp、udp、socks5、http等几乎所有流量转发,可用来访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析、内网socks5代理等等……,并带有功能强大的web管理端。
https://github.com/ehang-io/nps -
我的Goland Copyright 配置
Copyright (c) $today.year User: $username File: $file.fileName Date: $file.lastModified.format("yyyy/MM/dd HH:mm:dd")
-
错误问题 invalid $GOPROXY setting: cannot have comma
go 版本和goproxy的版本对应 -
sonatype
自动化DevSecOps
普遍管理软件库和构建工件。
世界上第一个也是唯一的免费使用的通用工件存储库
https://www.sonatype.com/download-oss-sonatype
依赖包仓库管理 -
查找数组中的第 K 大数 TopN 问题
https://github.com/frontend9/fe9-library/issues/248 -
自旋锁 Golang代码阅读
// Copyright 2019 Andy Pan. All rights reserved. // Use of this source code is governed by an MIT-style // license that can be found in the LICENSE file. package internal import ( "runtime" "sync" "sync/atomic" ) type spinLock uint32 func (sl *spinLock) Lock() { for !atomic.CompareAndSwapUint32((*uint32)(sl), 0, 1) { runtime.Gosched() } } func (sl *spinLock) Unlock() { atomic.StoreUint32((*uint32)(sl), 0) } // NewSpinLock instantiates a spin-lock. func NewSpinLock() sync.Locker { return new(spinLock) }
-
Golang noCopy 禁止复制实现
// noCopy may be embedded into structs which must not be copied // after the first use. // // See https://golang.org/issues/8005#issuecomment-190753527 // for details. type noCopy struct{} // Lock is a no-op used by -copylocks checker from `go vet`. func (*noCopy) Lock() {} func (*noCopy) Unlock() {}
-
Golang daemon 守护进程实现
// 守护模式是后台进程的实现,它 Fork 子进程后,父进程退出,子进程则变为 init 进程的子进程,从而实现无需终端session也可运行 procAttr := &syscall.ProcAttr{ Env: os.Environ(), Files: []uintptr{0, 1, 2}, Sys: &syscall.SysProcAttr{ Setsid: true, }, } _, err := syscall.ForkExec(os.Args[0], args, procAttr) if err != nil { log.Fatal(err) } os.Exit(0)
-
caddyserver
A new kind of extensible platform for server apps.
一种用于服务器应用程序的新型可扩展平台。
https://caddyserver.com/v2仍然是唯一自动且默认情况下 使用TLS的 Web服务器。使用Caddy 2 轻松部署和扩展HTTPS。
-
Golang 优化切片和数组的内存清理
var zeroBuf = make([]byte, 65535) data := bufpool.Get().([]byte) defer bufpool.Put(data) copy(data[0:cap(data)], zeroBuf)
2020-05-10
- 瓦力 Devops开源项目代码部署平台
walle 一个可自由配置项目,更人性化,高颜值,支持git、多用户、多语言、多项目、多环境同时部署的开源上线部署系统。
http://walle-web.io/
https://github.com/meolu/walle-web