每天一个liunx命令10之nohup和xargs
1上传jar包到服务器/edgewalk/springboot/下
2编写启动脚本start.sh
#!/bin/sh APP_HOME=/edgewalk/springboot cd $APP_HOME export
JAVA_HOME=//usr/local/src/java/jdk1.7 rm -f $APP_HOME/nohup.out nohup $JAVA_HOME/bin/java -jar
$APP_HOME/*.jar & |
nohup
command &
1不挂机运行command
2如果我们java -jar执行我们的jar包通过crt,那么我们关闭crt.断开和服务器的连接
那么jar包就会停止运行了,所以需要nohup命令
3默认会把日志输出到当前目录nohup.out文件中
export 引入jdk环境
3编写关闭脚本shutdown.sh
#!/bin/bash ps aux| grep -hs
'springboot_first-0.0.1-SNAPSHOT.jar'|grep -v 'grep'|awk -F ' ' '{print
$2}'|xargs kill -s 9 rm -f /edgewalk/springboot/nohup.out |
grep -v 'grep' :反向选择,亦即显示出没有 'grep' 内容的那一行!
awk
-F ' ' '{print $2}' 按照空格分割,获取到第二个参数(pid)
管道是实现“将前面的标准输出作为后面的标准输入”
xargs是实现“将标准输入作为命令的参数”