linux静默启动jar命令

fiy 其他 82

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在Linux系统中,可以使用以下方法实现静默启动jar命令:

    1. 使用命令行终端启动:打开终端,并进入jar文件所在的目录,然后输入以下命令:

    “`
    java -jar your_jar_file.jar > /dev/null 2>&1 &
    “`
    其中,your_jar_file.jar是你要启动的jar文件的名称。该命令的含义是将jar文件以后台进程的方式启动,并将标准输出和标准错误输出重定向到/dev/null中,实现静默启动。

    2. 使用启动脚本:创建一个shell脚本,例如startup.sh,并编辑该脚本,输入以下内容:

    “`
    #!/bin/sh
    nohup java -jar your_jar_file.jar > /dev/null 2>&1 &
    “`
    保存并关闭脚本文件。然后在终端中进入脚本所在的目录,并给脚本文件赋予执行权限:

    “`
    chmod +x startup.sh
    “`
    最后,运行脚本文件启动jar命令:

    “`
    ./startup.sh
    “`
    该方法将使用nohup命令和&符号将脚本以后台进程的方式启动,并将标准输出和标准错误输出重定向到/dev/null中,实现静默启动。

    需要注意的是,以上方法只是将jar命令以静默方式启动,但无法保证在运行过程中没有任何输出。如果需要进一步控制输出日志,可以在命令或脚本中指定日志文件路径,例如:

    “`
    java -jar your_jar_file.jar > /path/to/log.txt 2>&1 &
    “`
    将标准输出和标准错误输出重定向到指定的日志文件中,实现静默启动并保存输出日志。

    希望以上内容能够帮助到您,祝您使用Linux系统愉快!

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux上静默启动一个.jar文件,可以使用以下命令:

    1. 使用nohup命令:nohup命令可以在后台运行程序,并且将程序的输出重定向到nohup.out文件中。运行以下命令即可静默启动一个.jar文件:
    “`
    nohup java -jar yourfile.jar &
    “`
    这样就会在后台启动yourfile.jar文件,并将输出日志保存到nohup.out文件中。

    2. 使用tmux命令:tmux是一个终端复用器,它可以在后台创建会话并在会话中运行程序。使用以下命令即可静默启动一个.jar文件:
    “`
    tmux new-session -d -s mysession ‘java -jar yourfile.jar’
    “`
    这样就会在一个名为”mysession”的会话中启动yourfile.jar。

    3. 使用screen命令:screen也是一个终端复用器,类似于tmux。使用以下命令即可静默启动一个.jar文件:
    “`
    screen -dmS mysession java -jar yourfile.jar
    “`
    这样就会在一个名为”mysession”的会话中启动yourfile.jar。

    4. 使用systemd服务:在Linux系统上,可以使用systemd服务来管理后台进程。创建一个unit文件(例如yourfile.service),指定要启动的.jar文件路径和参数,然后启动服务即可。以下是一个示例unit文件的内容:
    “`
    [Unit]
    Description=Your Service

    [Service]
    ExecStart=/usr/bin/java -jar /path/to/yourfile.jar
    Type=simple
    Restart=always
    User=youruser

    [Install]
    WantedBy=multi-user.target
    “`
    然后,使用以下命令启动服务:
    “`
    sudo systemctl start yourfile.service
    “`

    5. 使用nohup命令与管道:如果你希望将程序的输出重定向到特定的文件而不是nohup.out,可以使用管道符号来实现。以下是一个示例命令:
    “`
    nohup java -jar yourfile.jar > output.log 2>&1 &
    “`
    这样会将程序的输出重定向到output.log文件中。

    需要注意的是,上述方法适用于Linux系统,具体命令可能会根据不同的Linux发行版有所差异。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux系统中,可以使用以下几种方法来实现静默启动jar命令。

    1. 使用nohup命令

    nohup命令可以在后台运行指定的命令,并忽略所有的挂断(SIGHUP)信号。这就意味着即使关闭了终端,命令仍然会继续运行。可以将java -jar命令和自定义的jar文件路径组合使用,然后使用nohup命令来启动。

    “`shell
    nohup java -jar /path/to/your/jar_file.jar >/dev/null 2>&1 &
    “`

    解释:
    – nohup:运行在后台,忽略挂断信号。
    – java -jar /path/to/your/jar_file.jar:启动jar文件。
    – >/dev/null:将标准输出重定向到/dev/null,丢弃输出。
    – 2>&1:将标准错误输出重定向到标准输出。
    – &:表示在后台运行。

    此命令会将jar文件以静默方式启动,并将输出和错误都重定向到/dev/null。

    2. 使用screen命令

    screen命令可以创建一个虚拟终端,让进程在其中运行,并且可以在终端关闭后继续运行。可以按照以下步骤来使用screen命令启动jar文件。

    – 安装screen命令(如果还没有安装):
    “`shell
    sudo apt-get install screen
    “`

    – 运行screen命令创建一个虚拟终端:
    “`shell
    screen -S yourscreenname
    “`

    – 在新的虚拟终端中运行命令:
    “`shell
    java -jar /path/to/your/jar_file.jar
    “`

    – 按下Ctrl+A,然后再按下d键,即可将虚拟终端切换到后台。

    现在,jar文件会在screen session中继续运行。可以通过以下命令重新连接到screen session来查看进程状态:
    “`shell
    screen -r yourscreenname
    “`

    3. 使用systemd服务

    另一种静默启动jar命令的方法是通过systemd服务。systemd是Linux系统中的一个init系统,可以用来管理系统中的服务。可以按照以下步骤创建一个systemd服务来启动jar文件。

    – 在`/etc/systemd/system`目录下创建一个新的service文件,例如`yourapp.service`。可以使用命令`sudo nano /etc/systemd/system/yourapp.service`打开一个新的文本文件来编辑。

    – 在新的service文件中添加以下内容:
    “`
    [Unit]
    Description=Your App Service
    After=network.target

    [Service]
    User=yourusername
    ExecStart=/usr/bin/java -jar /path/to/your/jar_file.jar
    SuccessExitStatus=143
    Restart=on-failure

    [Install]
    WantedBy=multi-user.target
    “`

    请注意将上述代码中的`yourusername`和`/path/to/your/jar_file.jar`替换为您自己的用户名和jar文件路径。

    – 保存并关闭文件。

    – 使用以下命令重新加载systemd:
    “`shell
    sudo systemctl daemon-reload
    “`

    – 使用以下命令启动服务:
    “`shell
    sudo systemctl start yourapp
    “`

    现在,jar文件将以静默方式启动,并且systemd会自动管理这个服务。可以使用`sudo systemctl status yourapp`命令来查看服务的状态和日志。

    以上是三种在Linux系统中静默启动jar命令的方法。根据需要选择其一来实现静默启动。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部