1 Star 0 Fork 0

andrew.zhang / libgo

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
cmdline.go 796 Bytes
一键复制 编辑 原始数据 按行查看 历史
andrew.zhang 提交于 2022-10-31 06:14 . 整理以前代码中...
package zbfile
import (
"os"
"sync/atomic"
"gitee.com/cosmiczh/libgo/loglv"
"gitee.com/cosmiczh/libgo/zbcont"
)
var g_cmdln_map = zbcont.NewRBtrIstr[string](true)
var g_cmdln_once int32 = 0
var g_cmdln_load bool = false
func CmdParmLike(leftpart string) string {
if !g_cmdln_load {
g_cmdln_load = true
if atomic.AddInt32(&g_cmdln_once, 1) == 1 {
for i := 0; i < len(os.Args); i++ {
g_cmdln_map.Insert(os.Args[i], "")
}
}
}
if it := g_cmdln_map.LowerBound(leftpart); it != g_cmdln_map.End() {
l_k := it.Key()
if len(l_k) < len(leftpart) {
return ""
}
if g_cmdln_map.GetCompFunc()(leftpart, l_k[:len(leftpart)]) == 0 {
return l_k
} else {
return ""
}
}
return ""
}
func init() {
loglv.InitSet(GetLogDir, GetExeBaseName, CmdParmLike, SearchDir)
}
Go
1
https://gitee.com/andrewzh/libgo.git
git@gitee.com:andrewzh/libgo.git
andrewzh
libgo
libgo
v1.0.3

搜索帮助