Qt中调用system()和QProcess执行命令行,更改树莓派的系统时间

最近给vivo做的设备需要连接MES生产内网,要求机器根据心跳包返回值来同步服务器时间。而这一步操作需要在上位机程序中执行,也就是在Qt中调用命令行或者更改配置文件来设置系统时间。
树莓派更改系统时间的方法很多,在这里我介绍两种比较方便的:

① 使用命令行:sudo date --s=“2020-11-28 14:30:00”

② 编写shell脚本,通过调用shell脚本执行命令行。
新建"systime.sh"脚本,在脚本中写入:

#! bin/bash
sudo date --s="2020-11-28 14:30:00"
exit 0
// exit 0表示脚本下执行完后自动关闭脚本文件

Qt中如何使用这两种方法来实现通过程序更改系统时间呢,在网上搜索后找到了如下两种方法:

① 使用Linux中的system()函数,这个函数需要引用stdlib.h头文件。在system函数中写入字符串形式的命令行,即可执行对应的终端命令,比如system(“sudo reboot”),那么树莓派就会重新启动。或者通过命令行运行脚本system(“systime.sh”)就会运行systime.sh脚本,然后执行脚本里的内容。
但是如果使用system的方式更改系统时间会有一个问题&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值