QT编译程序在Ubuntu下不进桌面直接启动和避免重复启动的方法

1、不进系统直接启动的方法

修改/etc/profile

在文件的最后添加启动文件的路径,如

/home/update/startMyQtApp.sh

2、避免重复执行程序的方法

创建文件锁,避免重复启动

在 /etc/profile 文件最后面那行启动指令前添加

防止重复加载的核心机制,因为/tmp/.etc_profile的存在,这里直接跳出去了

_ETC_PROFILE_LOCK="${TMPDIR:-/tmp}/.etc_profile"

if -f "${_ETC_PROFILE_LOCK}" ; then

如果锁文件存在,说明正在执行中

return 0

fi

创建锁文件

touch "${_ETC_PROFILE_LOCK}"

设置标记变量

if -n "${_ETC_PROFILE_DONE:-}" ; then

rm -f "${_ETC_PROFILE_LOCK}"

return 0

fi

export _ETC_PROFILE_DONE=1

原有的执行指令...

/home/update/startMyQtApp.sh

清理锁文件

#rm -f "${_ETC_PROFILE_LOCK}"

这个方法可能不是最好的,但是目前能找到比较好用的,接下来找到更好的话在这里继续更新

相关推荐
程序员-Benothing1 小时前
Linux安全加固指南:账号、权限、服务、审计基线
linux·运维·安全
Mininglamp_27181 小时前
接口调用 vs 屏幕理解:两种 GUI 自动化架构的技术取舍
运维·架构·自动化
Cry丶1 小时前
ubuntu安装vsftpd
服务器·网络·ubuntu
爱喝水的鱼丶3 小时前
SAP-ABAP:ECC→S/4HANA ABAP 迁移升级指南——程序改造、语法兼容与性能优化 导语
运维·开发语言·性能优化·sap·abap·经验交流·开发交流
木子欢儿3 小时前
openconnect Linux客户端安装 以及开机自启和登录
linux·运维·服务器
..Dauntless..4 小时前
【Linux】文件系统(一)
linux·运维·服务器
天空属于哈夫克34 小时前
企业微信API二次开发 赋能私域运营自动化
运维·自动化·企业微信
天远API5 小时前
零信任架构实战:基于天远运营商二要素V即时版构建自动化分时租赁出行会员身份一致性审核网关
运维·人工智能·架构·自动化
程序员-King.5 小时前
【ROS1】Noetic 开发工作流程与常用命令
c++·ubuntu·ros
极光通讯5 小时前
液冷服务器对内存和SSD的适配要求:高密度部署下的散热与信号完整性
运维·服务器