【笔记】linux中启动脚本遇到如下错误

[root@linuxlocalhost sh]# ./bootStart.sh
./bootStart.sh:行1: o: 未找到命令
自动化部署脚本启动
=================================
停止原来运行中的工程
Stop Process...
Stop Success!
准备从Git仓库拉取最新代码
开始从Git仓库拉取最新代码
remote: Enumerating objects: 21, done.
remote: Counting objects: 100% (21/21), done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 11 (delta 3), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (11/11), done.
来自 https://gitee.com/Shelena-E/giteecangku
   64ad1c5..2e971cb  master     -> origin/master
更新 64ad1c5..2e971cb
Fast-forward
 src/main/java/com/example/jardemo1/demos/web/BasicController.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
代码拉取完成
开始打包
启动项目
项目启动完成
[1]+  退出 143              nohup java -jar /usr/local/app/jardemo1-0.0.1-SNAPSHOT.jar &>/usr/local/app/hello.log(工作目录:/usr/local/giteecangku/target)
(当前工作目录:/usr/local/sh)

更改bootStart.sh的脚本为

#!/bin/sh
echo "================================="
echo "自动化部署脚本启动"
echo "================================="

echo "停止原来运行中的工程"
APP_NAME=jardemo1

tpid=$(ps -ef | grep $APP_NAME | grep -v grep | grep -v kill | awk '{print $2}')
if [ -n "$tpid" ]; then
    echo 'Stop Process...'
    kill -15 $tpid
fi
sleep 2
tpid=$(ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}')
if [ -n "$tpid" ]; then
    echo 'Kill Process!'
    kill -9 $tpid
else
    echo 'Stop Success!'
fi

echo "准备从Git仓库拉取最新代码"
cd /usr/local/giteecangku
if [ $? -ne 0 ]; then
    echo "无法进入 /usr/local/giteecangku 目录"
    exit 1
fi

echo "开始从Git仓库拉取最新代码"
git pull
if [ $? -ne 0 ]; then
    echo "Git 拉取代码失败"
    exit 1
fi
echo "代码拉取完成"

echo "开始打包"
output=$(mvn clean package -Dmaven.test.skip=true)
if [ $? -ne 0 ]; then
    echo "打包失败"
    echo "$output"
    exit 1
else
    echo "打包成功"
    echo "$output"
fi

echo "启动项目"
cd /usr/local/app
if [ $? -ne 0 ]; then
    echo "无法进入 /usr/local/app 目录"
    exit 1
fi

pwd # 确认当前目录
ls -l # 确认目录内容

nohup java -jar jardemo1-0.0.1-SNAPSHOT.jar &> /usr/local/app/hello.log &
status=$?
if [ $status -ne 0 ]; then
    echo "项目启动失败,状态码:$status"
    exit $status
else
    echo "项目启动完成"
fi
 

:wq保存退出再输入

chmod +x bootStart.sh


./bootStart.sh
重新运行脚本 运行成功 一切正常

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

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

相关文章

关于搞定Assignment写作的4个技巧

澳洲各种科目已经进入期中阶段,诸多老师留下的Assignment也快要到截止日期。那么有什么关于Assignment写作的技巧吗?这篇文章告诉你! 1:不要假设,要寻求理解 不是所有的作业都是一样的。你需要弄清楚这是一篇学术论文、一份商业报…

78110A雷达信号模拟软件

78110A雷达信号模拟软件 78110A雷达信号模拟软件(简称雷达信号模拟软件)主要用于模拟产生雷达发射信号和目标回波信号,软件将编译生成的雷达信号任意波数据下载到信号发生器中,主要是1466-V矢量信号发生器,可实现雷达信号模拟产生。软件可模…

HDFS读写流程详细过程

HDFS读写流程详细过程 HDFS的定义一、组成架构二、优缺点三、读流程四、NameNode和SeconderyNameNode五、写流程 HDFS的定义 HDFS(Hadoop Distributed File System),它是一个文件系统,用于存储文件,通过目录树来定位文…

opencv实现人脸检测功能----20240704

opencv实现人脸检测 早在 2017 年 8 月,OpenCV 3.3 正式发布,带来了高度改进的“深度神经网络”(dnn)模块。 该模块支持多种深度学习框架,包括 Caffe、TensorFlow 和 Torch/PyTorch。OpenCV 的官方版本中包含了一个更准确、基于深度学习的人脸检测器, 链接:基于深度学习…

码云项目如何弄到gitlab上面

码云项目如何弄到gitlab上面 git remote -v 可查看当前的远程仓库git remote remove origin 删除当前的远程仓库git remote add origin gitXXXX:XXXX/shares.git 添加新的远程仓库 这个是你在远程gitlab上面创建的一个空仓库的ssh 地址git remote -v 验证新的远程仓库是否添加…

身处奇瑞看三星:既“开卷“又“起火“,却更难受了

三星"起火" 这几天奇瑞的事情,让大家破防了,纷纷表示国内的就业市场环境普遍恶劣。 那我们转个眼,看看海外企业的情况。 最近一周,三星频频登上新闻,颇有"起火"之势。 在刚步入下半年的 7 月 1 日…

C++之boost智能指针

1、boost智能指针 资源获取即初始化:在构造函数中对资源进行初始化,在析构函数中释放。 智能指针的本质思想是:将堆对象的生存期,用栈对象来管理。这个栈对象就是智能指针。 当new 一个堆对象的时候,立刻用智能指针…

AI免费文档处理在线工具:文档总结;论文阅读

1、文档总结 NoteGPT 支持各种类型文档ppt、word、pdf等总结 https://notegpt.io/pdf-summary 另外各种大模型工具一般都支持文档上传总结: 例如kimi、通义等 参考:https://blog.csdn.net/weixin_42357472/article/details/138205261 2、论文阅读 h…

Sylar服务器框架——Http模块

1、http.h 定义了HttpMethod和HttpStatus /* Request Methods */ #define HTTP_METHOD_MAP(XX) \XX(0, DELETE, DELETE) \XX(1, GET, GET) \XX(2, HEAD, HEAD) \XX(3, POST, POST) \XX(4, PUT, …

plugin:vite:import-analysis]No known conditions for“./lib/locale/lang/zh-cn“

将原有引入: import zhCn from element-plus/lib/locale/lang/zh-cn 改成: import zhCn from element-plus/es/locale/lang/zh-cn; 原因版本升级,引入路径改变(原先的包在node_modules\element-plus\lib找不到) 新…

c++习题09-分离整数的各个数

目录 一,题目 二,思路 三,代码 一,题目 二,思路 一开始我想到的是将简单容易输出的1000以内的数先进行相应的运算,再输出之后再对1000以上的数字进行判断(主要还是想先将很大的数变小&#x…

Apache Commons 读写 CSV 文件

文章目录 一、Maven 引入二、代码实现 一、Maven 引入 <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-csv --><dependency><groupId>org.apache.commons</groupId><artifactId>commons-csv</artifactId><versio…

富格林:当心欺诈耽误顺利出金

富格林悉知&#xff0c;在交易中有亏损情况的投资者大多是因为被出金骗局的说辞所欺诈&#xff0c;真以为自己躺着就能赚到钱&#xff0c;到头来却发现血本无归。在此提醒投资者&#xff0c;市场变化是复杂的。如果想做好黄金投资&#xff0c;必须掌握必要的交易技巧。同时要树…

如何自动筛选螺丝不良品?

四角螺丝是一种特殊设计的螺丝&#xff0c;其螺纹头部呈四个平行的角状结构&#xff0c;与传统的六角螺丝相比具有独特的外观和功能。这种设计使得四角螺丝在安装和拆卸时更容易使用&#xff0c;并提供了更好的扭矩传递效率。四角螺丝头部呈现四个平行的角&#xff0c;与常见的…

detectron2使用总结 |使用detectron2构造 Faster RCNN 和 Mask RCNN 进行目标检测

模型的初始化 detectron2中模型的结构由 cfg 参数决定&#xff0c;而 cfg 的内容来自 configs 中的配置文件。 cfg.merge_from_file(model_zoo.get_config_file("COCO-Detection/faster_rcnn_R_50_FPN_1x.yaml"))meta_arch cfg.MODEL.META_ARCHITECTURE 得到的是一…

如何通过IP地址查询地理位置及运营商信息

在数字时代&#xff0c;IP地址&#xff08;Internet Protocol Address&#xff0c;互联网协议地址&#xff09;已经成为我们日常网络活动的重要组成部分。每台连接到互联网的设备都被分配了一个唯一的IP地址&#xff0c;它不仅可以识别设备&#xff0c;还可以揭示设备的地理位置…

图像信号处理器(ISP)基础算法及处理流程

&#x1f4aa; 专业从事且热爱图像处理&#xff0c;图像处理专栏更新如下&#x1f447;&#xff1a; &#x1f4dd;《图像去噪》 &#x1f4dd;《超分辨率重建》 &#x1f4dd;《语义分割》 &#x1f4dd;《风格迁移》 &#x1f4dd;《目标检测》 &#x1f4dd;《暗光增强》 &a…

传输距离3000M|低延迟|48K采样音频传输模块-SA356大功率发射模块

无线音频应用中&#xff0c;远距离音频传输在许多领域具有广泛的应用需求&#xff0c;例如大型会议系统、公共广播、户外活动和音乐演出等。为了满足这些需求&#xff0c;音频传输模块需要具备一些关键特性&#xff0c;包括长距离传输能力、高音质、低延迟、稳定性以及抗干扰能…

fastzdp_login的第一次构建

概述 为了方便能够快捷的实现fastapi实现登录相关功能代码开发&#xff0c;决定开发一个开源的fastapi组件库&#xff0c;想了很多个名字&#xff0c;在检查pypi的时候发现都被占用了&#xff0c;所以最终决定使用fastzdp_login这个名字。 fast代表的时fastapi。zdp代表的是张…

Springboot与xxl-job

一、下载xxl-job项目 XXL-JOB是一个分布式任务调度平台&#xff0c;其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线&#xff0c;开箱即用。 从GitHub上面将项目clone下来&#xff0c;如果网络问题导致速度慢也可以从Gitee上面拉…