zoukankan      html  css  js  c++  java
  • 用jetty-runner.jar 运行程序的脚本

    今天又补充了点脚本,感觉蛮有用的, 开心~ 

    先阐述清楚 linux/unix下特性:

    一般情况下,每个 Unix/Linux 命令运行时都会打开三个文件:
    标准输入文件(stdin):stdin的文件描述符为0,Unix程序默认从stdin读取数据。
    标准输出文件(stdout):stdout 的文件描述符为1,Unix程序默认向stdout输出数据。
    标准错误文件(stderr):stderr的文件描述符为2,Unix程序会向stderr流中写入错误信息。

    有时候,程序刚启动会刷日志到std out(console),很烦的~ 今天根据上面的说明, 优化了一下脚本。

    启动脚本

    #!/bin/bash
    java -Xmx512m -Xms64m -XX:PermSize=256M -XX:MaxPermSize=512M -jar jetty-runner.jar --port 12345 server-0.0.1-SNAPSHOT.war  >/web/program/gw/logs/stdout.log 2>&1 &
    
    
    echo $! > ./program.pid

    启动脚本说明:

    1. java - jar 和一些jvm参数  
    2. jetty-runner.jar 参数
    3. 把标准输出、标准错误(1/2) 从定向到/web/program/gw/logs/stdout.log
    4. & 后台启动
    5. 把程序的pid输出到program.pid

    关闭脚本

    #!/bin/bash
    pkill -F ./program.pid
    rm ./program.pid

    关闭脚本简单, 就是一个pkill -F 然后删除文件。

    小小心得

    java -Xmx512m -Xms64m -XX:PermSize=256M -XX:MaxPermSize=512M -jar jetty-runner.jar --port 12345 server-0.0.1-SNAPSHOT.war  >/web/program/gw/logs/stdout.log 2>&1 &

    之前是没有上面红色的部分的。问题就是系统启动后,控制台在刷日志, 神烦。 把上面红色的加上, 意思是把标准输出和标准错误都输出到这个文件中。

  • 相关阅读:
    推销
    5132. 颜色交替的最短路径
    5130. 等价多米诺骨牌对的数量
    @babel/plugin-transform-runtime和@babel/preset-env的区别
    5128. 最深叶节点的最近公共祖先(二叉树)
    1094. 拼车
    1109. 航班预订统计(数组)
    5129. 表现良好的最长时间段(数组)
    path.resove 和 path.join
    【原生】 call、apply、bind 的基本使用方法,已经解析了某些源码
  • 原文地址:https://www.cnblogs.com/ELMND/p/6044154.html
Copyright © 2011-2022 走看看