自定义解析数据,支持多种程序终端输出

在这里插入图片描述

/Users/admin/go/src/baobao_all/ws_server/baobao/main_test/encipher_tool_redis/redis_tool {VALUE}

	
/bin/bash -c "/Users/admin/Downloads/redis_tool {VALUE}"

写个go程序解析数据

package main

import (
	"encoding/json"
	"fmt"
	"os"
	"quwan/utils/aes"
)

// go build -x -v -ldflags "-s -w" -o redis_tool ./main.go && chmod +x redis_tool
// /Users/admin/go/src/baobao_all/ws_server/baobao/main_test/encipher_tool_redis/redis_tool
func main() {
	// 检查是否有传递参数
	if len(os.Args) < 2 {
		fmt.Println("Usage: ./sss_bin <value>")
		return
	}

	// 获取传递的参数
	value := os.Args[1]

	// 模拟解析过程,这里可以替换成你的实际逻辑
	parsedValue := parseValue(value)

	// 输出结果到标准输出
	fmt.Println(parsedValue)
}

// 模拟的解析函数,替换成你的实际逻辑
func parseValue(value string) string {
	res := aes.NewAesSecret("xxx", "xxxx").AesDecrypt(value)
	var res2 any
	if err := json.Unmarshal([]byte(res), &res2); err != nil {
		return fmt.Sprintf("解析失败: %s", err)
	}
	// 格式化好看的格式输入到 output.txt
	resByte, err := json.MarshalIndent(res2, "", "    ")
	if err != nil {
		return fmt.Sprintf("无法格式化: %s", err)
	}
	return string(resByte)
}

效果如下

在这里插入图片描述

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部