jrt运维命令改造

以前发布网站都是定死网站放置路径的,现在JRT想面向更广范围推广,所以就不能明确确定网站放置目录,为此需要改造一下jrt命令和sh来满足目录不确定情况和多个程序用不同管理命令的要求。

以前是写死的,现在改为调程序运行目录的sh文件,这样程序放置位置就可以随意了
在这里插入图片描述

改造后的c++

#include<cstdlib>
#include<string>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include <unistd.h>  
using namespace std;

//定义数组大小
#define NUM 900

//执行方法
extern void Invoke(string cmd);
#ifdef WIN32
/// <summary>
/// 执行命令
/// </summary>
/// <param name="cmd"></param>
void Invoke(string cmd)
{
	cout << "仅支持linux驱动JRT运维命令:" << cmd << endl;
}
#else
#include<stdlib.h>
/// <summary>
/// 执行命令
/// </summary>
/// <param name="cmd"></param>
void Invoke(string cmd)
{
    char cmdArr[NUM];
    cmd.copy(cmdArr, cmd.length(), 0);
    system(cmd.c_str());
    return;
	char line[NUM];
	FILE* fp;
	//系统调用
	const char* sysCommand = cmd.data();
	if ((fp = popen(sysCommand, "r")) == NULL)
	{
		cout << "错误" << endl;
		return;
	}
	//输出
	while (fgets(line, sizeof(line) - 1, fp) != NULL)
	{
		cout << line;
	}
	pclose(fp);
}
#endif

/// 得到程序的根路径
std::string get_cur_executable_path_()
{
    char *p = NULL;
    const int len= 256;
    /// to keep the absolute path of executable's path
    char arr_tmp[len]= {0};
    int n= readlink("/proc/self/exe", arr_tmp, len);
    if (NULL!= (p = strrchr(arr_tmp,'/')))
	{
        *p = '\0';
	}
    else
    {
        return std::string("");
    }
    return std::string(arr_tmp);
}

/// <summary>
/// mian方法
/// </summary>
/// <returns></returns>
int main(int argc, char *argv[]) {
	//执行bash脚本
	string cmdStr ="bash "+get_cur_executable_path_()+"/jrt.sh";
	cout << "欢迎使用jrt的linux命令呼出入口,通过jrt命令引导bash脚本" << endl;
	cout << "执行命令:" << cmdStr<<endl;
	//执行命令
	Invoke(cmdStr);
	return 0;
}

sh的初始化由以前的拷贝改为创建软连接,这样执行jrt命令就能驱动程序文件下的sh
在这里插入图片描述

通过考虑更广范围使用,运行自己定义呼出的命令,这样多份程序就可以放在不同目录,然后自定义呼出了
在这里插入图片描述

自定义名称效果

[root@localhost jrtbase]# jrt
欢迎使用jrt的linux命令呼出入口,通过jrt命令引导bash脚本
执行命令:bash /jrtbase/jrt.sh
 
+欢迎您使用jrt网站运维脚本
+该脚本致力于简化基于jrt框架的web在linux上运维
+常用菜单选项有1、2
+检验约定发布在8080端口
+在没有jrt命令的检验服务器运行bash /jrtbase/jrt.sh来第一次初始化jrt命令
 
 
+*************************************************JRTWeb网站配置工具************************************************************+
+                                                                                                                               +
+ 1:重启Tomcat网站                                                                                                             +
+                                                                                                                               +
+ 2:端口查看和开放,查看端口占用(lsof -i:8080)                                                                                   +
+                                                                                                                               +
+ 3:查看网站进程信息                                                                                                            +
+                                                                                                                               +
+ 8:编译实体                                                                                                                    +
+                                                                                                                               +
+ 9:常用命令帮助                                                                                                                +
+                                                                                                                               +
+ 10:启动rsync服务                                                                                                              +
+                                                                                                                               +
+ 11:停止Tomcat网站                                                                                                             +
+                                                                                                                               +
+ 18:实体编译测试和代码比对                                                                                          +
+                                                                                                                               +
+ 66:自定义命令名称,否则都是以jrt驱动                                                                               +
+                                                                                                                               +
+ 发布后系统访问地址http://127.0.0.1:8080/JRTWeb/login/form/Login.aspx                                                          +
+                                                                                                              小乌鱼 20231228  +
+*******************************************************************************************************************************+
请按菜单输入选择功能Ctrl+C退出:66
请输入要定义的命令名称:
zlz
以后可以用zlz来驱动运维脚本了
关闭端口请执行:firewall-cmd --zone=public --remove-port=/tcp --permanent
+*************************************************JRTWeb网站配置工具************************************************************+
+                                                                                                                               +
+ 1:重启Tomcat网站                                                                                                             +
+                                                                                                                               +
+ 2:端口查看和开放,查看端口占用(lsof -i:8080)                                                                                   +
+                                                                                                                               +
+ 3:查看网站进程信息                                                                                                            +
+                                                                                                                               +
+ 8:编译实体                                                                                                                    +
+                                                                                                                               +
+ 9:常用命令帮助                                                                                                                +
+                                                                                                                               +
+ 10:启动rsync服务                                                                                                              +
+                                                                                                                               +
+ 11:停止Tomcat网站                                                                                                             +
+                                                                                                                               +
+ 18:实体编译测试和代码比对                                                                                          +
+                                                                                                                               +
+ 66:自定义命令名称,否则都是以jrt驱动                                                                               +
+                                                                                                                               +
+ 发布后系统访问地址http://127.0.0.1:8080/JRTWeb/login/form/Login.aspx                                                          +
+                                                                                                              小乌鱼 20231228  +
+*******************************************************************************************************************************+
请按菜单输入选择功能Ctrl+C退出:^C[root@localhost jrtbase]# 
[root@localhost jrtbase]# zlz
欢迎使用jrt的linux命令呼出入口,通过jrt命令引导bash脚本
执行命令:bash /jrtbase/jrt.sh
 
+欢迎您使用jrt网站运维脚本
+该脚本致力于简化基于jrt框架的web在linux上运维
+常用菜单选项有1、2
+检验约定发布在8080端口
+在没有jrt命令的检验服务器运行bash /jrtbase/jrt.sh来第一次初始化jrt命令
 
 
+*************************************************JRTWeb网站配置工具************************************************************+
+                                                                                                                               +
+ 1:重启Tomcat网站                                                                                                             +
+                                                                                                                               +
+ 2:端口查看和开放,查看端口占用(lsof -i:8080)                                                                                   +
+                                                                                                                               +
+ 3:查看网站进程信息                                                                                                            +
+                                                                                                                               +
+ 8:编译实体                                                                                                                    +
+                                                                                                                               +
+ 9:常用命令帮助                                                                                                                +
+                                                                                                                               +
+ 10:启动rsync服务                                                                                                              +
+                                                                                                                               +
+ 11:停止Tomcat网站                                                                                                             +
+                                                                                                                               +
+ 18:实体编译测试和代码比对                                                                                          +
+                                                                                                                               +
+ 66:自定义命令名称,否则都是以jrt驱动                                                                               +
+                                                                                                                               +
+ 发布后系统访问地址http://127.0.0.1:8080/JRTWeb/login/form/Login.aspx                                                          +
+                                                                                                              小乌鱼 20231228  +
+*******************************************************************************************************************************+
请按菜单输入选择功能Ctrl+C退出:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/356316.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Dubbo 3.x源码(16)—Dubbo服务发布导出源码(5)

基于Dubbo 3.1&#xff0c;详细介绍了Dubbo服务的发布与引用的源码。 此前我们学习了Dubbo 3.x源码(15)—Dubbo服务发布导出源码(4)&#xff0c;也就是Dubbo远程服务导出export方法的上半部分&#xff0c;也就是doLocalExport源码&#xff0c;将会得到一个Exporter。 现在我们…

C++类和对象引入以及类的介绍使用

文章目录 一、面向过程和面向对象的初步认识二、类的引入2.2 类的引入 三、类的访问限定符及封装3.3 访问限定符3.4 【面试题】C中struct和class的区别3.5 类的两种定义方式 四、封装【面试题】面向对象的三大特性 五、类的作用域六、类的实例化七、类对象模型7.1 类对象的存储…

(Sping Xml方式整合第三方框架)学习Spring的第十天

Spring整合mybatis 1 . 导入Mybatis整合Spring的相关坐标 <dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>5.2.13.RELEASE</version></dependency><dependency><…

基于springboot网上图书商城源码和论文

在Internet高速发展的今天&#xff0c;我们生活的各个领域都涉及到计算机的应用&#xff0c;其中包括网上图书商城的网络应用&#xff0c;在外国网上图书商城已经是很普遍的方式&#xff0c;不过国内的管理网站可能还处于起步阶段。网上图书商城具有网上图书信息管理功能的选择…

新建VM虚拟机-安装centOS7-连接finalshell调试

原文 这里有问题 首先进入/etc/sysconfig/network-scripts/目录 cd /etc/sysconfig/network-scripts/ 然后编辑文件 ifcfg-ens33 vi ifcfg-ens33

探索数字经济:从基础到前沿的奇妙旅程

新一轮技术革命方兴未艾&#xff0c;特别是以人工智能、大数据、物联网等为代表的数字技术革命&#xff0c;催生了一系列新技术、新产业、新模式&#xff0c;深刻改变着世界经济面貌。数字经济已成为重组全球要素资源、重塑全球经济结构、改变全球竞争格局的关键力量。预估到20…

OpenCV 5 - 图像混合处理addWeighted()

图像混合 1 理论-线性混合操作 其中α的取值范围为0~1之间,表示图像的所占的权重 2 混合处理函数addWeighted() 3 代码示例 Mat src1, src2, dst;src1 = imread("./1.png");src2 = imread("./2.png");if (!src1.data && src2.empty()) //判断图片…

word文档怎么做成翻页电子书

随着科技的进步&#xff0c;电子书已成为越来越多人阅读的首选。翻页电子书以其独特的翻页效果和丰富的互动功能&#xff0c;更是受到了广大读者的喜爱。那么&#xff0c;如何将传统的Word文档制作成翻页电子书呢&#xff1f; 一、了解翻页电子书的特点 翻页电子书&#xff0c…

鸿蒙开发【分布式任务调度】解析

鸿蒙OS 分布式任务调度概述 在 HarmonyO S中&#xff0c;分布式任务调度平台对搭载 HarmonyOS 的多设备构筑的“超级虚拟终端”提供统一的组件管理能力&#xff0c;为应用定义统一的能力基线、接口形式、数据结构、服务描述语言&#xff0c;屏蔽硬件差异&#xff1b;支持远程启…

成功解决IndexError: index 0 is out of bounds for axis 1 with size 0.

成功解决IndexError: index 0 is out of bounds for axis 1 with size 0. &#x1f335;文章目录&#x1f335; &#x1f333;引言&#x1f333;&#x1f333;报错分析及解决方案&#x1f333;&#x1f333;参考文章&#x1f333;&#x1f333;结尾&#x1f333; &#x1f333;…

Codeforces Round 921 (Div. 2)补题

We Got Everything Covered!&#xff08;Problem - A - Codeforces&#xff09; 题目大意&#xff1a;要求找出一个长度最短的字符串&#xff0c;满足任意由前k个字母组成的长度为n的字符串都是它的子序列。输出字符串。 思路&#xff1a;这道题我本来想的很简单&#xff0c;…

仅使用 Python 创建的 Web 应用程序(前端版本)第10章_订单列表

本章我们将实现订单列表页面。 完成后的图像如下。 创建过程与之前相同,如下。 No分类内容1Model创建继承BaseDataModel的数据类Order、OrderDetail2Service创建一个 OrderAPIClient3Page定义PageId并创建继承自BasePage的页面类4Application将页面 ID 和页面类对添加到 Mult…

第五季特别篇:一夜杯、游戏之宴 2017.04.26

第五季特别篇&#xff1a;一夜杯、游戏之宴 2017.04.26 OVA 第1话&#xff1a;一夜酒杯 / 一夜杯OVA 第2话&#xff1a;游戏之宴 / 遊戯の宴 OVA 第1话&#xff1a;一夜酒杯 / 一夜杯 遭到独角妖袭击的妖怪夫妇日土和初菜被夏目所救&#xff0c;这对妖怪夫妇制作的酒杯&#xf…

【服务器APP】利用HBuilder X把网页打包成APP

目录 &#x1f33a;1. 概述 &#x1f33c;1.1 新建项目 &#x1f33c;1.2 基础配置 &#x1f33c;1.3 图标配置 &#x1f33c;1.4 启动界面配置 &#x1f33c;1.5 模块配置 &#x1f33c;1.6 打包成APP &#x1f33a;1. 概述 探讨如何将网页转化为APP&#xff0c;这似乎…

LeetCode 热题 100 | 矩阵

目录 1 73. 矩阵置零 2 54. 螺旋矩阵 3 48. 旋转图像 4 240. 搜索二维矩阵 II 菜鸟做题第二周&#xff0c;语言是 C 1 73. 矩阵置零 解题思路&#xff1a; 遍历矩阵&#xff0c;寻找等于 0 的元素&#xff0c;记录对应的行和列将被记录的行的元素全部置 0将被记录的…

SOME/IP 协议介绍(七)传输 CAN 和 FlexRay 帧

SOME/IP 不应仅用于传输 CAN 或 FlexRay 帧。但是&#xff0c;消息 ID 空间需要在两种用例之间进行协调。 传输 CAN/FlexRay 应使用完整的 SOME/IP 标头。 AUTOSAR Socket-Adapter 使用消息 ID 和长度来构建所需的内部 PDU&#xff0c;但不会查看其他字段。因此&#xff0c;必…

「效果图渲染」如何使用VRay渲染逼真的物理模型

使用V-Ray渲染出逼真的物理模型首先要注重材质和光照的真实性。精细调整材质属性&#xff0c;如反射、透明度和质感&#xff0c;确保它们与现实世界中物质的特性相一致。接下来&#xff0c;布置合适的光源&#xff0c;模拟自然光线的行为&#xff0c;创建真实的光影效果。通过这…

Redis -- 前置知识

目录 简要 分布式系统 负载均衡 引入缓存 数据库分表 微服务 小结 简要 redis是存储数据在内存中, 定义变量就是在内存中, 但是redis是在分布式系统中, 才能真正发挥威力, 如果只是单机程序, 那么直接通过变量来存储数据的方式将是最优的选择. …

(bean的创建图)学习Spring的第十天(很重要)

大致框架按如下 第一次细分 bean对象还未创建 操作第一个map 引入BeanFactoryPostProcessor , 即Bean工厂后处理器 , 为Spring很重要的扩展点 BeanFactoryPostProcessor内部的方法 可以对BeaDefinition进行修改 , 也可进行BeanDefinition的注册 ( 原有在xml文件配置的bean…

大模型学习与实践笔记(十四)

使用 OpenCompass 评测 InternLM2-Chat-7B 模型使用 LMDeploy 0.2.0 部署后在 C-Eval 数据集上的性能 步骤1&#xff1a;下载internLM2-Chat-7B 模型,并进行挂载 以下命令将internlm2-7b模型挂载到当前目录下&#xff1a; ln -s /share/model_repos/internlm2-7b/ ./ 步骤2&…