首页 > 速报 > 科技问答 >

nohup

发布时间:2024-11-13 18:01:00来源:

`nohup` 是一个在 Unix 和 Linux 系统中的命令,用于运行命令或脚本,并忽略挂断(hangup)信号。这意味着即使你退出了终端或关闭了会话,该命令或脚本仍会继续在后台运行。这对于长时间运行的进程特别有用。

使用 `nohup` 的基本语法是:

```bash

nohup command > /dev/null 2>&1 &

```

这里的关键部分是:

* `command` 是你想运行的命令或脚本。

* `> /dev/null` 是将命令的输出重定向到 `/dev/null`,这意味着你不会看到任何输出。如果你想查看输出,可以将其重定向到一个文件,例如 `command.out`。

* `2>&1` 是将标准错误(文件描述符 2)重定向到标准输出(文件描述符 1)。这样,所有的输出(包括错误)都会被捕获。

* `&` 在命令的末尾表示将命令放到后台运行。

例如,如果你想在后台运行一个名为 `myscript.sh` 的脚本,并忽略所有的输出和错误,你可以这样做:

```bash

nohup ./myscript.sh > /dev/null 2>&1 &

```

当你运行上述命令时,`nohup` 会创建一个名为 `nohup.out` 的文件来存储输出。如果你想更改输出文件的名称或位置,只需在 `>` 后指定新的文件路径和名称。例如:

```bash

nohup ./myscript.sh > myscript_output.log 2>&1 &

```

这样,所有的输出都会被写入到 `myscript_output.log` 文件中。

nohup

`nohup` 是一个在 Unix 和 Linux 系统上使用的命令,用于运行命令或脚本并使其在关闭终端后继续运行。它常用于后台运行长时间的任务或程序,即使终端会话结束也不会受到影响。

当你使用 `nohup` 命令时,它会将命令的输出重定向到一个名为 `nohup.out` 的文件中,除非你指定了其他输出文件。这样,即使你关闭了终端或会话,命令仍然会在后台运行,并且其输出会被保存到指定的文件中。

使用 `nohup` 的基本语法如下:

```bash

nohup command > output_file &

```

其中:

* `command` 是你想要运行的命令或脚本。

* `output_file` 是命令输出的文件(可选)。如果不指定输出文件,输出会被保存到 `nohup.out` 中。

* `&` 用于在后台运行命令。

例如,如果你想在后台运行一个名为 `myscript.sh` 的脚本并忽略挂断信号,你可以使用以下命令:

```bash

nohup ./myscript.sh &

```

这样,即使你关闭了终端或会话,`myscript.sh` 仍然会在后台运行,并且其输出会被保存到 `nohup.out` 文件中(除非你在命令中指定了其他输出文件)。

免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。