shell if[-z ] 命令
参考if命令
- if [ -z $string ] 如果string 为空,则判true
if [ $? -eq “0” ];
- shell脚本中$?是指上一次命令执行的成功或者失败的状态。如果成功就是0,失败为1.。语句if [ $? -eq 0 ] 是判断if语句的上一个命令执行如果失败就执行if中的语句,否则就执行else中的内容。
note:使用时要注意,if后面的中括号[ $? -eq 0 ],括号的两边需要有一个空格。
nohup java -jar $APP_NAME > /dev/null 2>&1 &
- nohup 表示永久运行。& 表示后台运行
>/dev/null 2>&1
- /dev/null 代表空设备文件,也就是不输出任何信息到终端,说白了就是不显示任何信息。
“>” 代表重定向到哪里
1 表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于"1>/dev/null"
2 表示stderr标准错误
& 表示等同于的意思,2>&1,表示2的输出重定向等同于1
nohup ./mqnamesrv >/home/cxb/mqnamesrv.out 2>&1 &
即标准输出到mqnamesrv.out中,接着,标准错误输出重定向等同于标准输出,输出到同一文件中。 - 后台运行app 并且把正确错误都输出到空文件,也就是不输出