linux环境下 go语言识别biso数据
软件注册如果需要绑定硬件,多可文档系统识别机器的BIOS硬件信息给软件授权,如下是linux环境GO语言识别biso代码:
通过运行Linux命令dmidecode 得到硬件信息,需要程序程序有root权限。
package sysinfo import ( "fmt" "os/exec" "runtime" "strings" "testing" ) func RunPipeCmd(name string, arg ...string) (string, error) { cmd := exec.Command(name, arg...) // 命令的错误输出和标准输出都连接到同一个管道 stdout, err := cmd.StdoutPipe() cmd.Stderr = cmd.Stdout if err != nil { return "", err } if err = cmd.Start(); err != nil { return "", err } builder := new(strings.Builder) // 从管道中实时获取输出并打印到终端 for { tmp := make([]byte, 1024) _, err := stdout.Read(tmp) builder.WriteString(string(tmp)) if err != nil { break } } if err = cmd.Wait(); err != nil { return builder.String(), err } // return builder.String(), nil } func BIOS() string { s, _ := RunPipeCmd("dmidecode", "-t", "1") arr := strings.Split(s, "\n") for _, a := range arr { a = strings.ToLower(a) // x := strings.Index(a, "serial number:") if x >= 0 { s2 := a[x+14:] var bios = strings.ReplaceAll(s2, " ", "") return strings.TrimSpace(bios) } } return "" } func TestNtHardware(t *testing.T) { fmt.Printf("Sn: %s\n", BIOS()) }
linux环境下 go语言识别biso数据相关推荐
- Linux创建线程读取双口数据,linux环境下读写一次双口ram尽然要十几个毫秒。(附驱动代码)...
linux环境下读写一次双口ram尽然要十几个毫秒.(附驱动代码) 我用的双口ram是IDT70V28,手册上说的读写时间应该是几个纳秒,我写了个linux驱动,然后做测试,发现读写一次的时间尽然是十 ...
- 在Linux环境下使用ffmpeg将PCM音频数据编码成aac数据
在Linux环境下使用ffmpeg将PCM音频数据编码成aac数据 程序框图 代码演示 程序框图 将pcm数据经过aac编码器编码成aac数据,我是将从设备上采集的数据经过重采样送入aac编码器进行编 ...
- linux设置密码报错automa,opensuse linux环境下ibm_websphere和ibm_db2安装以及DB2数据迁移操...
opensuse linux环境下ibm_websphere和ibm_db2安装 ibm_websphere安装: 1.ibm官网下载免费版websphere,如下载文件名为BASETRIAL.age ...
- 在Linux环境下使用OTPS工具箱提取TPXO9海潮模型数据作潮汐水位预报
在Linux环境下使用OTPS工具箱提取TPXO9海潮模型数据作潮汐水位预报 前期准备 下载OTPS工具箱 导入TPXO9数据 提取数据并预报 前期准备 下文中提到的WSL环境,即Windows Su ...
- linux svn更换数据仓库,Linux环境下SVN数据仓库迁移
上一篇文章介绍了Windows环境下SVN数据的备份与还原,这篇文章介绍下Linux环境下数据迁移. 一准备工作 1安装环境 1 centOS7 2可上网 2软件需求 1 winSCP 2 PuTTy ...
- Linux环境下的网络编程
本文介绍了在Linux环境下的socket编程常用函数用法及socket编程的一般规则和客户/服务器模型的编程应注意的事项和常遇问题的解决方法,并举了具体代 码实例.要理解本文所谈的技术问题需要读者 ...
- Ubuntu环境下使用gnuplot由数据表绘制曲线图
在ubuntu中安装NS-3之后,编译DASH仿真器Simulation,在由自适应算法得到仿真结果后可以直接导出数据表,包含仿真时间.每次跳转的视频切片的BitRate等等,这时候可以在Linux环 ...
- Linux环境下路由表配置一
路由表配置网关及端口 网络地址:分析目标地址 接口:数据有可能从路由器的哪个出口出来,哪个就是接口 网关:目标网络与发数据的设备不在一个网段内,下一个路由器邻近主配置路由器的接口ip就是网关,线路 ...
- Linux 环境下的高级隐藏技术
摘要:本文深入分析了Linux环境下文件.进程及模块的高级隐藏技术,其中包括:Linux可卸载模块编程技术.修改内存映象直接对系统调用进行修改技术,通过虚拟文件系统proc隐藏特定进程的技术. 隐藏技 ...
最新文章
- android studio gradle 位置更改
- nginx四层端口转发
- 能量分析攻击day01
- qq动态页面变方格_微信更新“分组显示、群管理”等功能,网友:都是QQ玩剩的姿势...
- 浏览器了解(二)HTML解析过程
- python中常用的模块二
- 网址由http转换成https
- Android 系统(18)---Handler,MessageQueue与Looper关系
- echart同一个dom下多次动态渲染值,防止值、事件重复互相影响
- CSS按钮动画(三)
- java域名解析到目录_nginx将泛解析的匹配域名绑定到子目录配置方法
- aws fargate_使用AWS Fargate部署PyCaret和Streamlit应用程序-无服务器基础架构
- 一文读懂华为智能网联汽车产业链布局
- 史上最全综述 | 3D目标检测算法汇总!(单目/双目/LiDAR/多模态/时序/半弱自监督)
- 嵌入式操作系统风云录:历史演进与物联网未来第2章 Chapter2
- 圣科车衣,给予您的爱车完美守护
- 看了CES之后,跳槽到朝阳行业有着落了
- 风丘科技为您提供电动汽车高压测试方案
- adb install 安装APK Failure INSTALL_FAILED_ALREADY_EXISTS Attempt to re-install without first
- 双网卡电脑的Internet连接共享
热门文章
- 自动咖啡机概要设计说明书
- 复变函数与积分变换(猴博士精华版)
- vue提交mutation_Mutation
- Springboot毕设项目大学生心理辅导系统njqlvjava+VUE+Mybatis+Maven+Mysql+sprnig)
- pyqt5使用QPainter绘制坐标轴并显示散点图
- Java:类名的命名规则
- CentOS下添加Root权限用户(超级用户)方法
- python倒序输出数组_python如何逆序输出数组
- 【MySQL】单行函数
- c语言静态分析工具,雨田静态分析工具下载