这个命令是什么意思 - "nohup ./standalone.sh -b 0.0.0.0 &"?

What does this command means - "nohup ./standalone.sh -b 0.0.0.0 &"?

我在 jboss-7.1.1 linux[=18= 上有一个繁重的应用程序 运行 ] 服务器。我遇到了这个命令来启动 jboss “nohup ./standalone.sh -b 0.0.0.0 &”。 但我想更多地了解这个命令行。此外,nohup.out 文件大小每天都在增加。是因为我执行启动 jboss 的命令行吗?有没有办法避免nohup.out被创建

nohup

nohup 使以下命令不受 SIGHUP 信号的影响。它从终端分离命令。当终端关闭时,终端中的任何进程(或命令)运行 都会发送 SIGHUP(挂断)信号然后死亡。

这意味着如果终端屏幕关闭(启动 ./standalone.sh 的终端),standalone.sh 仍然是 运行。它与终端分离。

前景和背景

命令末尾的&standalone.sh程序置于后台。背景意味着该命令不会阻塞终端shell。另一方面,前台的命令将阻止对终端的任何输入 shell,直到它完成。

示例:read -p "enter name " 需要用户输入。它会阻塞终端 shell 直到按下 ENTER。 read 命令位于 前景 并阻止终端接收更多命令。后台进程不会阻止启动它的 shell。

nohup.out

此文件包含使用 nohup 发出的命令的输出。在您的情况下,它是 standalone.sh 脚本的输出。

您可以将命令的输出定向到文件:

nohup ./standalone.sh -b 0 0 0 0 & > myfile.txt

或者甚至通过写入 /dev/null 来处理输出。如果这样做,您将丢失命令生成的任何错误。

  nohup ./standalone.sh -b 0 0 0 0 & > /dev/null

如果您想保留任何错误消息,但又想忽略任何其他输出,则将错误流(流 2)重定向为:

 nohup ./standalone.sh -b 0.0.0.0 & >/dev/null 2>my-error-file.txt"

只想补充一下大嫌疑人的回答:

./standalone.sh -b 0.0.0.0

./standalone.sh 以独立模式启动 jboss-7.1.1 (war 文件位于 JBOSS_HOME/standalone/deployments,使用 JBOSS_HOME/standalone/configuration 配置等)在所有可用网络上。

-b 设置系统 属性 jboss.bind.address0.0.0.0 表示在所有网络接口上。比如127.0.0.1,你的外部IP地址,你本地网络的IP等等。因此,您的 jboss 将在您当前连接的所有网络接口上可用。