代码拉取完成,页面将自动刷新
package command
import (
"fmt"
"gitee.com/quant1x/engine/tools"
"gitee.com/quant1x/num"
"gitee.com/quant1x/pkg/tools/tail"
cmder "github.com/spf13/cobra"
"slices"
"strings"
)
const (
toolsCommand = "tool"
toolsDescription = "工具"
)
var (
CmdTools *cmder.Command = nil // 工具集合
cmdToolTail *cmder.Command = nil // tail工具
)
func initTools() {
CmdTools = &cmder.Command{
Use: toolsCommand,
Example: Application + " " + toolsCommand + " --help",
Short: toolsDescription,
Run: func(cmd *cmder.Command, args []string) {
},
}
toolsInitTail()
CmdTools.AddCommand(cmdToolTail)
}
func toolsInitTail() {
var taiConfig tail.Config
var n int
cmdToolTail = &cmder.Command{
Use: "tail",
Example: Application + " tool tail -f runtime.log",
Short: "文件末端阅览",
DisableFlagParsing: true,
Run: func(cmd *cmder.Command, args []string) {
for i := 0; i < len(args); i++ {
args[i] = strings.TrimSpace(args[i])
}
if len(args) != 2 || slices.Contains(args, "--help") || slices.Contains(args, "-h") {
_ = cmd.Usage()
return
}
if args[0] == "-f" {
taiConfig.Follow = true
taiConfig.Poll = true
} else if args[0][:1] == "-" {
n = int(num.AnyToInt64(args[0]))
n = -n
}
name := args[1]
if n > 0 {
tools.TailFileWithNumber(name, taiConfig, n)
} else {
done := make(chan bool)
tools.TailFile(name, taiConfig, done)
<-done
}
},
//PreRunE: func(cmd *cmder.Command, args []string) error {
// //fmt.Println(args)
// if slices.Contains(args, "--help") || slices.Contains(args, "-h") {
// cmd.Usage()
// }
// return nil
//},
}
cmdToolTail.SetUsageFunc(func(command *cmder.Command) error {
fmt.Println("Usage:\n" + Application + " tool tail [-f] [-n #] [file ...]")
return nil
})
cmdToolTail.Flags().BoolVarP(&taiConfig.Follow, commandDefaultLongFlag, "f", false, "一直等待新数据添加到文件")
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。