linux

如何使用nohup命令后台运行Node.js应用

小樊
37
2025-12-17 21:38:00
栏目: 编程语言

要使用nohup命令在后台运行Node.js应用程序,请按照以下步骤操作:

  1. 打开终端(Terminal)或命令提示符(Command Prompt)。

  2. 导航到您的Node.js应用程序所在的目录。例如,如果您的应用程序位于/home/user/my-node-app,请使用以下命令:

    cd /home/user/my-node-app
    
  3. 确保您的Node.js应用程序包含一个启动脚本。通常,这是一个名为app.jsindex.js的文件。确保此文件包含用于启动应用程序的代码,例如:

    const express = require('express');
    const app = express();
    const port = 3000;
    
    app.get('/', (req, res) => {
      res.send('Hello World!');
    });
    
    app.listen(port, () => {
      console.log(`Example app listening at http://localhost:${port}`);
    });
    
  4. 使用nohup命令在后台运行您的Node.js应用程序。这将使应用程序在您关闭终端或断开连接后继续运行。使用以下命令,将your-script.js替换为您的启动脚本文件名(例如app.jsindex.js):

    nohup node your-script.js &
    

    在Windows上,使用以下命令:

    nohup node your-script.js > NUL 2>&1 &
    

    这将在后台运行您的Node.js应用程序,并将输出重定向到名为nohup.out的文件。

  5. 您现在可以关闭终端或断开连接,Node.js应用程序将继续在后台运行。

  6. 若要检查应用程序的输出,可以查看nohup.out文件。在Linux和macOS上,使用以下命令:

    cat nohup.out
    

    在Windows上,使用以下命令:

    type nohup.out
    
  7. 若要停止在后台运行的Node.js应用程序,可以使用ps命令找到进程ID(PID),然后使用kill命令终止进程。在Linux和macOS上,使用以下命令:

    ps aux | grep your-script.js
    kill [PID]
    

    [PID]替换为您在上一步中找到的进程ID。

    在Windows上,使用以下命令:

    tasklist | findstr your-script.js
    taskkill /F /PID [PID]
    

    [PID]替换为您在上一步中找到的进程ID。

0
看了该问题的人还看了