首页 > 其他分享 >049-第三代软件开发-软件部署脚本(一)

049-第三代软件开发-软件部署脚本(一)

时间:2023-11-14 13:35:49浏览次数:37  
标签:软件开发 service 第三代 启动 C++ QML 049 my your


049-第三代软件开发-软件部署脚本(一)_脚本

第三代软件开发-软件部署脚本(一)


文章目录

  • 第三代软件开发-软件部署脚本(一)
  • 项目介绍
  • 软件部署脚本(一)
  • 其他方式



关键字:

Qt

Qml

bash

shell

脚本

项目介绍

欢迎来到我们的 QML & C++ 项目!这个项目结合了 QML(Qt Meta-Object Language)和 C++ 的强大功能,旨在开发出色的用户界面和高性能的后端逻辑。

在项目中,我们利用 QML 的声明式语法和可视化设计能力创建出现代化的用户界面。通过直观的编码和可重用的组件,我们能够迅速开发出丰富多样的界面效果和动画效果。同时,我们利用 QML 强大的集成能力,轻松将 C++ 的底层逻辑和数据模型集成到前端界面中。

在后端方面,我们使用 C++ 编写高性能的算法、数据处理和计算逻辑。C++ 是一种强大的编程语言,能够提供卓越的性能和可扩展性。我们的团队致力于优化代码,减少资源消耗,以确保我们的项目在各种平台和设备上都能够高效运行。

无论您是对 QML 和 C++ 开发感兴趣,还是需要我们为您构建复杂的用户界面和后端逻辑,我们都随时准备为您提供支持。请随时联系我们,让我们一同打造现代化、高性能的 QML & C++ 项目!

重要说明☝

☀该专栏在第三代软开发更新完将涨价

软件部署脚本(一)

软件编写完了,就要部署到生产力环境了,虽然我在我们的生产力环境中安装了完整版本的Qt,但是还有其他工作需要操作的,比如需要开机启动,这里其实有很多方式,加上我们的程序需要以管理员权限启动,所以我们写了一个脚本,完了把这个脚本添加到开机启动即可。

代码如下

#!/bin/sh


cd /home/XXX/Project

echo "123456" | sudo -S ./monitorRestart.sh

其他方式

以服务的方式启动

要在Linux上创建一个开机启动程序的服务,你可以使用Systemd服务管理器。下面是一个示例的Systemd服务单元文件,用于启动一个名为"my_service"的程序:

  1. 创建一个名为my_service.service的文件,将以下内容复制到该文件中:
[Unit]
Description=My Service
After=network.target

[Service]
ExecStart=/path/to/your/program
WorkingDirectory=/path/to/your/program/directory
Restart=always
User=your_username

[Install]
WantedBy=multi-user.target

请根据你的实际情况进行以下修改:

  • /path/to/your/program替换为你要启动的程序的完整路径。
  • /path/to/your/program/directory替换为你要启动的程序所在的目录的完整路径。
  • your_username替换为你的用户名。
  1. my_service.service文件移动到Systemd服务单元文件的目录,通常是/etc/systemd/system/。你需要使用root权限执行此操作。
sudo mv my_service.service /etc/systemd/system/
  1. 启用并启动服务:
sudo systemctl enable my_service
sudo systemctl start my_service

现在,你的程序将在系统启动时自动运行。你可以使用以下命令来检查服务的状态:

systemctl status my_service

如果一切正常,你应该看到服务正在运行。

请注意,上述示例假设你的程序不需要以root权限运行。如果你的程序需要root权限,请在my_service.service文件的[Service]部分添加User=root

此外,如果你的程序需要在网络连接可用之后才能正常工作,你可以根据需要修改After=network.target行。例如,如果你的程序需要等待数据库服务启动后才能运行,可以将After=network.target修改为After=network.target mysql.service

希望这可以帮助你创建一个Linux开机启动的服务。如有其他问题,请随时提问。


049-第三代软件开发-软件部署脚本(一)_部署_02


标签:软件开发,service,第三代,启动,C++,QML,049,my,your
From: https://blog.51cto.com/DreamLife/8366076

相关文章

  • 046_第三代软件开发-虚拟屏幕键盘
    第三代软件开发-虚拟屏幕键盘文章目录第三代软件开发-虚拟屏幕键盘项目介绍虚拟屏幕键盘关键字:Qt、Qml、虚拟键盘、qtvirtualkeyboard、自定义项目介绍欢迎来到我们的QML&C++项目!这个项目结合了QML(QtMeta-ObjectLanguage)和C++的强大功能,旨在开发出色的用户界面和......
  • 044_第三代软件开发-保存PDF
    第三代软件开发-保存PDF文章目录第三代软件开发-保存PDF项目介绍保存PDF头文件源文件使用关键字:Qt、Qml、pdf、painter、打印项目介绍欢迎来到我们的QML&C++项目!这个项目结合了QML(QtMeta-ObjectLanguage)和C++的强大功能,旨在开发出色的用户界面和高性能的后端逻辑......
  • 047_第三代软件开发-日志分离
    第三代软件开发-日志分离文章目录第三代软件开发-日志分离项目介绍日志分离用法关键字:Qt、Qml、log、日志、分离项目介绍欢迎来到我们的QML&C++项目!这个项目结合了QML(QtMeta-ObjectLanguage)和C++的强大功能,旨在开发出色的用户界面和高性能的后端逻辑。在项目中,我......
  • 直播app软件开发的步骤和代码!
    随着互联网的发展,直播App已经成为人们日常生活的一部分,它为观众提供了实时观看、互动交流和参与体验的机会,同时也为开发者带来了可观的商业价值,本文将详细介绍直播App的开发步骤和相关代码。一、需求分析在开发直播App之前,需要进行详细的需求分析,这包括对目标用户、竞争对手和市场......
  • 开源网安受邀参加网络空间安全合作与发展论坛,为软件开发安全建设献计献策
    11月10日,在广西南宁举办的“2023网络空间安全合作与发展论坛”圆满结束。论坛在中国兵工学会的指导下,以“凝聚网络空间安全学术智慧,赋能数字经济时代四链融合”为主题,邀请了多位专家及企业代表共探讨网络安全发展与数字经济建设。开源网安常务副总王颉博士受邀参加本届论坛并分享了......
  • 软件开发项目文档系列之十四如何撰写系统试运行报告
    试运行报告是一个关键的质量控制工具,可用于验证新系统、流程或设备的可行性和性能。通过记录试运行的过程、结果和问题,可以帮助组织更好地了解项目的进展情况,识别潜在的风险和问题,并及时采取纠正措施。试运行报告还可以作为一个重要的参考文档,供未来的决策、培训和改进使用。因此,......
  • 教育培训app软件开发功能-多端开发
      近些年,随着网上直播课的流行,传统教育方式也在寻求改变,用户逐渐从线下转移到线上听课,通过线上平台他们可以进行实时互动、集思广益,为了带给用户更好的体验,教育培训类app便应运而生了,交互性的界面、丰富的课程内容以及及时的反馈和评价,用新颖的方式满足了用户对知识的需求,那么......
  • 自动化软件开发避雷!请绕开这些坑!
    随着科技的飞速发展,自动化软件开发已成为行业内的热门话题,然而,在这个充满机遇和挑战的领域中,开发人员需要面对许多潜在的问题和风险,本文将向大家介绍自动化软件开发中需要避开的坑,以确保项目的成功实施和交付。一、忽视需求分析和定义阶段许多开发团队在开始一个项目时,往往急于开始......
  • 【GUI软件开发】小红书评论采集:自动采集1w多条,含二级评论!
    目录一、爬取目标1.1效果截图1.2演示视频1.3软件说明二、代码讲解2.1爬虫采集模块2.2软件界面模块2.3日志模块三、获取源码及软件一、爬取目标您好!我是@马哥python说,一名10年程序猿。我用python开发了一个爬虫采集软件,可自动抓取小红书评论数据,并且含二级评论数据。为......
  • 微服务架构:软件开发的革命还是短暂潮流?
    引言从今天开始,我们将深入探讨服务网格(ServiceMesh)这个领域的知识。尽管在我们的工作中可能还没有广泛应用,但服务网格确实是一种趋势。如果你还没有听说过这个概念,我希望你能够跟随我的步伐,一起了解这个特殊而重要的技术。首先,我将为大家介绍微服务的发展历程,从过去到现在,逐渐引......