美文网首页
Shell入门实例-应知应会

Shell入门实例-应知应会

作者: chuckielove | 来源:发表于2017-03-15 23:44 被阅读0次

需求在Linux服务器上运行jar包来启动Java服务,使用kill相关命令关闭服务,需要用shell脚本实现,shell脚本支持2个输入参数分别控制要执行的动作和要操作的jar包,有了需求我们来看需要什么知识来支持我们的shell脚本实现

1、jar包的运行命令

2、如何获取外部2个输入参数:只获取到参数引申出参数的传递,这就用到了变量定义

3、shell脚本的流程控制:引申出了条件控制语句,if 或者 case

4、函数实现服务的开启和关闭,引申出函数的定义和函数传值

OK我们已经知道了有这些知识需要掌握,我们来逐一解决这些问题

1、jar包的运行命令

这个简单:java -Xms128m -Xmx2048m -jar xxxx.jar &

2、如何获取2个输入参数

比如我们运行./xxx.sh 参数1 参数2

在shell脚本中是如何获取的呢?

在shell脚本中分别使用$1和$2表示

还是刚才的例子,我们运行./xxx.sh start service_a

在xxx.sh中:

#!/bin/sh

cmd=$1

servicename=$2

a和b的值分别是"start","service_a"

3、流程控制:我们这里介绍case的用法

case $1 in

service_a)

java -Xms128m -Xmx2048m -jar a.jar &

;;

service_b)

java -Xms128m -Xmx2048m -jar b.jar &

;;

exit 1

esac

4、函数定义和传值

要定义2个函数start()和stop()作为服务开启和关闭的函数

start(){

    case $1 in

service_a)

java -Xms128m -Xmx2048m -jar a.jar &

;;

service_b)

java -Xms128m -Xmx2048m -jar b.jar &

;;

exit 1

esac

}

stop(){

ps -ef|grep "$1" |grep -v 'grep' |awk '{print $2}'|sudo xargs kill -9

}

case "$cmd" in

start)

start "$servicename"

;;

stop)

stop "$servicename"

;;

restart)

stop

start

;;

*)

printf 'Usage: %s {start|stop}\n' "$prog"

exit 1

;;

esac

OK,我们的需求都实现了,shell的基本的使用入门done

相关文章

  • Shell入门实例-应知应会

    需求在Linux服务器上运行jar包来启动Java服务,使用kill相关命令关闭服务,需要用shell脚本实现,s...

  • 知行合一的牧养反思

    完整的教导必须包含两个基本部分,应知和应会。应知是知识,应会是实践。应知和应会的统一是知行的合一。信仰必须包含真理...

  • aisino应知应会

    战略和企业文化 1.什么是战略 2.公司战略 3.什么是企业文化?如何建设企业文化? 4.我们的企业文化 5.组织...

  • 应知应会 - 草稿

    陈可欣的《创城应知应会》

  • SQL应知应会

    检索数据 Select语句 想选择什么以及从什么地方选择 SELECT prod_name FROM Produc...

  • 应知应会常识

    党的十八大以来,我们党共开展了4次专题教育 2013年,党的群众路线教育实践活动 2015年,“三严三实”专题教育...

  • 职场应知应会

    职场小白经常会觉得自己精力无限,这也可以那也可以,不知不觉陷入困境。于是各种牢骚埋怨,即使工作做好了,也不会得到肯...

  • 学习应知应会

    中午突击学习了一下《党风廉政建设应知应会》,发现还真是第一次系统的认识了一下应该知道的知识。据说安全也会出一套应知...

  • 教官应知应会

    学员要求: 军训“八字”方针:礼貌、忠诚、时间、服从、 物品统一划一、队列整齐划一、声音洪亮划一、 训练场地干净 ...

  • 新人应知应会

    首先非常感谢史总送给了我这本书。第1次进入保险行业是2018年,因为当时是兼职,虽然全程参与了培训,但是仅仅停留在...

网友评论

      本文标题:Shell入门实例-应知应会

      本文链接:https://www.haomeiwen.com/subject/ntgrnttx.html