• springboot启动脚本


    #!/bin/sh
    JAVA_HOME="/ulic1/jdk/jdk1.8.0_201/bin"
    export JAVA_HOME
    lsof -i:9010 |awk '{print $2}' | sed -n '2p' | xargs kill -9
    nohup $JAVA_HOME/java -jar mwp-callback-1.0.0.jar 1>server.out 2>&1 &

    ## lsof -i:8089 为找到监听8089的程序及对应程序的pid
    ## awk是行处理器 依次对每一行进行处理,然后输出
    ## sed -n 是指定第几行  sed -n '2p' 表示获取结果的第2行
    ## “xargs kill -9” 中的xargs命令是用来把前面命令的输出结果(这里是PID)作为“kill -9”命令的参数,并执行该命令。

      

    1.netstat -anp |grep 端口号
    监控状态为LISTEN表示已经被占用

    2.netstat -nultp(此处不用加端口号)
    该命令是查看当前所有已经使用的端口情况


    我们使用>或者>>对输出进行重定向。
    符号的左边表示文件描述符,如果没有的话表示1,也就是标准输出,符号的右边可以是一个文件,也可以是一个输出设备
    。当使用>时,会判断右边的文件存不存在,如果存在的话就先删除,然后创建一个新的文件,不存在的话则直接创建。
    但是当使用>>进行追加时,则不会删除原来已经存在的文件。

    标准输入(standard input) 0 从键盘获得输入 /proc/self/fd/0
    标准输出(standard output) 1 输出到屏幕(即控制台) /proc/self/fd/1
    错误输出(error output) 2 输出到屏幕(即控制台) /proc/self/fd/2
    1. >/dev/null
    这条命令的作用是将标准输出1重定向到/dev/null中。
    /dev/null代表linux的空设备文件,所有往这个文件里面写入的内容都会丢失,俗称“黑洞”。
    那么执行了>/dev/null之后,标准输出就会不再存在,没有任何地方能够找到输出的内容。

    2. 2>&1
    这条命令用到了重定向绑定,采用&可以将两个输出绑定在一起。
    这条命令的作用是错误输出将和标准输出同用一个文件描述符,说人话就是错误输出将会和标准输出输出到同一个地方。


    >/dev/null 2>&1 VS 2>&1 >/dev/null

    乍眼看这两条命令貌似是等同的,但其实大为不同。
    刚才提到了,linux在执行shell命令之前,就会确定好所有的输入输出位置,并且从左到右依次执行重定向的命令。
    那么我们同样从左到右地来分析2>&1 >/dev/null:

    >/dev/null 2>&1 VS >/dev/null 2>/dev/nul

  • 相关阅读:
    SignalR 持久链接 (该功能为手机设备与后台同个用户id进行实现的,仅用signalR学习参考)
    SQL SERVER 分割符转列
    js时间计算加减
    SQL查询历史执行语句
    MSSQL 多行数据串联字符分割单行
    居于HttpWebRequest的HTTP GET/POST请求
    硬件UDP读数AsynUdpClient
    SQL取分组数据的所有第一条数据
    Python 文件的使用
    Python 数据类型
  • 原文地址:https://www.cnblogs.com/wenbuzhu/p/10620956.html
Copyright © 2020-2023  润新知