首页 > 代码库 > 每天一个liunx命令10之nohup和xargs
每天一个liunx命令10之nohup和xargs
<link rel="File-List"><link rel="themeData"><link rel="colorSchemeMapping"><style>p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; font-size: 15.0pt; font-family: Consolas } .MsoChpDefault { font-family: "Calibri", sans-serif } div.WordSection1 { }</style>
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是实现“将标准输入作为命令的参数”
每天一个liunx命令10之nohup和xargs