银河麒麟,Qt开发,项目中有个需求是要获取主板序列号,查询一番,找到了方法:
QProcess process;
QString command = "sh -c \"echo 12345 | sudo -S cat /sys/class/dmi/id/board_serial\"";
process.start(command); //Works.
process.waitForStarted();
process.waitForFinished();
QString mbsn = QString::fromUtf8(process.readAllStandardOutput()).trimmed();
结果:
核心是命令:
sh -c \"echo 12345 | sudo -S cat /sys/class/dmi/id/board_serial\"
其中12345是本机root用户的密码。如果实际环境中不需要sudo权限,则不需要密码。