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 pathchar 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退出:

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

wsl-ubuntu 安装 nginx

wsl-ubuntu 安装 nginx 1. 安装 nginx2. 确认 nginx 启动状态3. 重启 nginx4. 停止 nginx 1. 安装 nginx sudo apt install nginx2. 确认 nginx 启动状态 systemctl status nginx3. 重启 nginx systemctl restart nginx4. 停止 nginx systemctl stop nginx完成&#xff01;…

网络相关知识

关于作者&#xff1a;CSDN内容合伙人、技术专家&#xff0c; 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 &#xff0c;擅长java后端、移动开发、商业变现、人工智能等&#xff0c;希望大家多多支持。 目录 一、导读二、概览三、相关工具3.1 network profiler/ In…

Spring cloud智慧工地信息平台管理系统源码

目录 报警统计 实时报警列表 工程进度 劳务信息 隐患信息 施工安全管理 人员证书管理 专项安全方案 安全方案审批 隐患排查管理 安全检查统计 危险源Top10 整改超时预警 检查问题数量统计 安全隐患趋势 安全日志管理 视频监控查看 视频回放 AI危险源识别 AI应用总览 AI设备 机械…

mysql注入联合查询

环境搭建 下载复现漏洞的包 下载小皮面板 将下载好的文件解压在小皮面板的phpstudy_pro\WWW路径下 将这个文件phpstudy_pro\WWW\sqli-labs-php7-master\sql-connections\db-creds.inc 中的密码更改为小皮面板中的密码 选择php版本 在小皮中启动nginx和数据库 使用环回地址访…

23种设计模式-结构型模式

1.代理模式 在软件开发中,由于一些原因,客户端不想或不能直接访问一个对象,此时可以通过一个称为"代理"的第三者来实现间接访问.该方案对应的设计模式被称为代理模式. 代理模式(Proxy Design Pattern ) 原始定义是&#xff1a;让你能够提供对象的替代品或其占位符。…

一份轴承振动数据集摘引 - XJTU-SY2019

1.原始引用 我第一次看到这个数据集是在知乎&#xff1a; XJTU-SY数据集轴承故障诊断 - 知乎XJTU-SY数据集包含了3种工况下的15个滚动轴承的全寿命周期振动信号&#xff0c;且明确标注了每个轴承的失效部位&#xff0c;相关论文如下&#xff1a;[1]雷亚国,韩天宇,王彪,李乃鹏…

DS:经典算法OJ题(1)

创作不易&#xff0c;友友们给个三连呗&#xff01;&#xff01; 本文为经典算法OJ题练习&#xff0c;大部分题型都有多种思路&#xff0c;每种思路的解法博主都试过了&#xff08;去网站那里验证&#xff09;是正确的&#xff0c;大家可以参考&#xff01;&#xff01; 一、移…

物流行业的RFID技术应用前景

根据趋势来看&#xff0c;RFID技术在物流行业将会得到广泛应用&#xff0c;RFID的意义不仅仅是简单的物流跟踪&#xff0c;还可以实现从仓储到物流再到消费和防盗的全链条打通&#xff0c;提高整个供应链的效率&#xff0c;并且节省了扫码人员、收银员等人工成本。 在无线通信…

视频渲染靠cpu还是显卡 会声会影视频渲染的作用是什么

视频渲染最占用的资源就是CPU&#xff0c;多核心多线程&#xff0c;这样才能渲染快。渲染可以在时间线上实时平滑预览&#xff0c;便于编辑&#xff0c;最终导出成片的时候速度也会快一些&#xff0c;渲染就是对每桢的图像进行重新优化的过程。 渲染的作用主要是能够保证使用者…

如何本地搭建Tale博客网站并发布到公网分享好友远程访问——“cpolar内网穿透”

文章目录 前言1. Tale网站搭建1.1 检查本地环境1.2 部署Tale个人博客系统1.3 启动Tale服务1.4 访问博客地址 2. Linux安装Cpolar内网穿透3. 创建Tale博客公网地址4. 使用公网地址访问Tale 前言 今天给大家带来一款基于 Java 语言的轻量级博客开源项目——Tale&#xff0c;Tale…

幻兽帕鲁越玩越卡,内存溢出问题如何解决?

近期幻兽帕鲁游戏大火&#xff0c;在联机组队快乐游玩的同时&#xff0c;玩家们也发现了一些小问题。由于游戏有随机掉落材料的设定&#xff0c;服务器在加载掉落物的过程中很容易会出现掉帧、卡顿的情况。某些玩家甚至在游戏1&#xff5e;2时后就出现服务器崩溃的情况&#xf…

架构篇30:异地多活设计4步走

文章目录 第 1 步:业务分级第 2 步:数据分类第 3 步:数据同步第 4 步:异常处理小结上一篇,基于异地多活架构设计复杂度最高的“跨城异地”,我们总结了异地多活设计的 4 个技巧及其核心思想,掌握这些技巧是进入具体设计步骤的前提。 本篇,在掌握这 4 大技巧的基础上,我…