`
yjandx3543
  • 浏览: 49705 次
  • 性别: Icon_minigender_1
  • 来自: 隐居山林
社区版块
存档分类
最新评论

Linux start shell

阅读更多
我写了一个java程序,有main方法入口,已经打包一个jar,并已经能在unix下启动运行,但我想写个脚本文件,方便管理人员去启动和关闭我的java进程. 类似于tomcat的startup.sh,shutdown.sh ,但不能具体如何写,我查过资料,大概原理是启动java进程后,获得进程pid,pid保存到一个文件中,关闭时,读取这个文件,获得pid,kill pid. 具体怎样写不知道,请熟悉这方面的帮忙写写,谢谢.





#!/bin/sh

SERVER=/home/java/server
cd $SERVER

case "$1" in

  start)
    nohup java -Xmx128m -jar server.jar > $SERVER/server.log 2>&1 &
    echo $! > $SERVER/server.pid
    ;;

  stop)
    kill `cat $SERVER/server.pid`
    rm -rf $SERVER/server.pid
    ;;

  restart)
    $0 stop
    sleep 1
    $0 start
    ;;

  *)
    echo "Usage: run.sh {start|stop|restart}"
    ;;

esac

exit 0


我的第一个可执行脚本:

CLASS_PATH=myReminder.jar
CLASS_PATH=$CLASS_PATH:lib/classes12.jar
CLASS_PATH=$CLASS_PATH:lib/log4j-1.2.16.jar
CLASS_PATH=$CLASS_PATH:lib/dom4j-1.6.jar
CLASS_PATH=$CLASS_PATH:lib/jaxen-1.1.1.jar
SERVER=/qzpt/mysms   
cd $SERVER   
  
case "$1" in   
  
  start)   
    nohup java -Dfile.encoding=UTF8 -Xms64M -Xmx256M -cp $CLASS_PATH com.trendsnet.myReminder.ReminderShell > $SERVER/server.log 2>&1 &   
    echo $! > $SERVER/server.pid   
    ;;   
  
  stop)   
    kill `cat $SERVER/server.pid`   
    rm -rf $SERVER/server.pid   
    ;;   
  
  restart)   
    $0 stop   
    sleep 1   
    $0 start   
    ;;   
  
  *)   
    echo "Usage: myshell.sh {start|stop|restart}"  
    ;;   
  
esac   
  
exit 0 
分享到:
评论

相关推荐

    西南科大+Linux实验报告+shell程序开发

    【Linux Shell 程序开发】 Shell编程是Linux系统中一种强大的命令解释器,它允许用户编写脚本来自动化常见的操作系统任务。西南科大的Linux实验报告着重于掌握Shell编程的基本特性和实际应用。 **一、实验目的** 1....

    linuxB-shell

    在Linux系统中,Bash(Bourne-Again SHell)是默认的命令解释器,是用户与操作系统交互的重要工具。Bash shell脚本是一种强大的编程语言,它允许用户编写自动化任务,执行日常管理任务,或者创建复杂的系统服务。...

    Linux下shell自启动程序.zip

    在Linux操作系统中,shell脚本是一种强大的工具,用于自动化任务执行和系统管理。"Linux下shell自启动程序"指的是利用shell脚本在系统启动时自动运行特定的任务或服务。这通常涉及到Linux系统的初始化进程和系统服务...

    Linux shell

    在IT行业中,Linux Shell是操作系统的核心组成部分,它提供了一个命令行接口(CLI)来与Linux或类Unix系统交互。在本场景中,我们关注的是如何在Linux Solaris环境下配置Oracle数据库以便实现自启动。这个话题涉及到...

    linux shell 发送email 邮件

    在Linux环境中,发送电子邮件可以通过Shell脚本来实现,这对于自动化任务或者系统通知非常有用。本教程将介绍三种不同的方法来使用Linux Shell发送邮件。 ### 方法一:简单邮件发送 最基础的发送邮件方式是使用...

    Linux Shell Scripting with Bash

    ### Linux Shell Scripting with Bash #### 核心知识点解析 **1. Linux Shell Scripting 基础** - **Shell 的概念与作用** - Shell 是一个命令解释器,是用户与操作系统之间的交互界面。 - 用户通过输入命令,...

    Linux Shell Scripting Cookbook - Third Edition

    You can start writing scripts and one-liners by simply looking at the relevant recipe and its descriptions without any working knowledge of shell scripting or Linux. Intermediate / advanced users, ...

    start shell command

    标题“start shell command”指的是在Linux或类Unix操作系统中启动Shell命令的过程。Shell命令是用户与操作系统交互的主要方式,特别是对于系统管理员和开发者而言。在Linux中,Shell脚本(如`killall.sh`和`start...

    linux系统Shell脚本运行java项目。

    linux shell脚本启动java。 ---------------------------------------- Windows编辑的sh,在linux会报错: shell unexpected end of file 解决办法: vim test.sh :set fileformat=unix :wq ----------------------...

    Linux之shell脚本

    ### Linux之Shell脚本知识点详解 #### 一、Shell脚本概述 在Linux环境中,Shell是一种用户与操作系统交互的方式,而Shell脚本则是利用Shell语言编写的程序。它能够执行一系列命令来完成特定任务,例如文件操作、...

    linuxshell.zip

    在Linux中,Redis服务通常通过`systemd`命令控制,如`systemctl start/stop/restart redis.service`。 再来看**Nginx**,这是一款高性能的HTTP和反向代理服务器,也是邮件代理服务器。安装Nginx的Shell脚本会涉及...

    linux 安装tomcat shell脚本

    针对标题"Linux安装Tomcat Shell脚本",描述中提到的是一站式脚本,涵盖了安装Tomcat、配置JDK以及创建Tomcat用户等多个步骤。接下来,我们将深入探讨这些知识点。 **一、Linux Shell脚本** Shell脚本是Linux系统...

    Linux Shell从入门到精通学习笔记

    Linux Shell是Linux操作系统中的一种命令解释器,它允许用户通过命令行界面与系统进行交互,执行各种系统操作。本文档《Linux Shell从入门到精通》是作者李振良基于个人经验整理的一份全面教程,旨在帮助读者从零...

    linux-set-start.rar_linux 开机启动

    在旧的init系统中,服务启动配置通常在`/etc/rc.d/init.d`目录下,以shell脚本形式存在,并通过`chkconfig`或`update-rc.d`命令管理开机启动。例如,创建一个名为`my-service.sh`的脚本,然后: ```bash sudo chmod...

    linux_shell_数组建立及使用技巧.docx

    在Linux和Unix环境中,Shell脚本是自动化任务和系统管理的强大工具。数组是Shell编程中的一个重要概念,允许我们存储和处理多个相关值。在Linux Shell中,数组的使用技巧包括创建、读取、赋值、删除以及一些特殊操作...

    java在win下启动bat和在linux下启动shell脚本

    在Windows和Linux环境中,启动批处理脚本(bat)和shell脚本(sh)是常见的任务,特别是在自动化和脚本执行过程中。`RunScript.java`和`StreamGobbler.java`这两个文件可能就是用来实现这个功能的。 `RunScript....

    Linux下SpringBoot/SpringCloud微服务部署Shell

    Linux下SpringBoot/SpringCloud微服务部署Shell,对微服务jar进行部署,格式如下: sh spring-boot.sh $OPERATION jar包.jar --spring.profiles.active={自定义} OPERATION支持start、stop、status

    shell连接不上linux虚拟机解决方案

    ### Shell连接不上Linux虚拟机的常见问题与解决方案 在IT领域,尤其是系统管理和软件开发过程中,经常遇到通过Shell无法远程连接到Linux虚拟机的问题。这不仅影响工作效率,还可能导致项目延期。本文将深入探讨这一...

    linux-shell自动部署脚本参考文件

    该脚本基于centos环境下的shell脚本自动部署配置,该脚本内容基本无需变化,仅根据sh文件名称进行对应的服务jar名称定位,比如,将...也封装了start,status,restart,stop等常用shell命令函数,灵活方便,容易上手。

Global site tag (gtag.js) - Google Analytics