nohup: appending output to 'nohup.out'
时间: 2023-02-27 17:25:01 浏览: 606
"nohup: 正在将输出附加到'nohup.out'"意思是你正在使用 Unix 的 nohup 命令,该命令在后台运行一个进程,并且将输出重定向到名为 nohup.out 的文件。这个消息告诉你该进程的输出已经被记录到 nohup.out 文件中。
相关问题
nohup:appending output to nohup.out
您好!对于您的问题,"nohup:appending output to nohup.out" 是一个常见的提示。这表示输出将被追加到名为 "nohup.out" 的文件中。当您在命令行中运行后台进程时,通常会使用nohup命令,并使用该提示来告知您输出的位置。
如果您希望停止将输出追加到 "nohup.out" 文件中,您可以使用以下命令来终止相关进程:
```
$ kill <进程ID>
```
请替换"<进程ID>"为要终止的进程的实际ID。您可以使用ps命令或pgrep命令来查找要终止的进程ID。
如果您还有其他问题,请随时提出。
nohup: appending output to 'nohup.out' nohup: appending output to 'nohup.out'
### nohup 命令行为解析
当使用 `nohup` 命令运行程序时,默认情况下,如果未指定其他输出位置,则会忽略输入并将标准输出和标准错误输出追加到当前目录下的 `nohup.out` 文件中[^1]。
#### 默认情况下的输出重定向
对于简单的命令执行:
```bash
nohup ./test.sh
```
这会导致所有来自脚本的标准输出和标准错误都被写入名为 `nohup.out` 的文件里。如果没有权限创建此文件或遇到其他IO问题,可能会收到相应的警告信息。
#### 自定义输出路径
可以改变默认的日志保存地点,通过显式的重定向操作符来实现这一点:
```bash
nohup ./test.sh > a.txt
```
这里只改变了标准输出的方向,而标准错误依旧会被发送给终端显示出来;因此可能还会看到有关无法读取输入之类的提示消息。要同时控制两者,需进一步调整命令结构。
#### 同步管理标准输出与标准错误
为了确保所有的输出都按照预期的方式处理,应该这样组合使用重定向符号:
```bash
nohup ./test.sh > a.txt 2>&1 &
```
上述指令不仅指定了新的目标文件用于存储正常输出(`> a.txt`),还利用了特殊的语法让错误信息跟随其后(`2>&1`),并且加上后台进程标志(&),使得整个过程可以在用户退出shell之后继续独立工作而不受影响。
#### 完全抑制日志生成
有时出于性能考虑或是为了避免不必要的大容量日志积累,可以选择完全丢弃这些数据流。这时可借助 `/dev/null` 这一特殊设备节点作为接收者——它就像一个吞噬一切的数据黑洞一样不会留下任何痕迹:
```bash
nohup java -jar yourapp.jar >/dev/null 2>&1 &
```
这条语句有效地阻止了任何形式的外部可见反馈产生,无论是成功的还是失败的结果都不会被记录下来[^3]。
阅读全文