Nodejs:如何实现node.exe执行完后按回车才退出

Nodejs:如何实现node.exe执行完后按回车才退出

就是暂停一下,按下回车键才退出

3 回复

Node.js: 如何实现 node.exe 执行完后按回车才退出

有时候我们在运行 Node.js 脚本时希望脚本在执行完毕后暂停一段时间,等待用户按下回车键之后再退出。这在调试或展示结果时非常有用。

解决方案

你可以使用 readline 模块来监听用户的输入,并在用户按下回车键之后退出程序。下面是一个简单的示例代码:

const readline = require('readline');

// 创建一个 readline 接口实例
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout
});

console.log("脚本已经执行完毕,请按回车键退出...");

// 监听回车键的输入
rl.on('line', (line) => {
    // 当用户按下回车键时,关闭 readline 接口并退出进程
    rl.close();
    process.exit(0);
});

示例说明

  1. 引入模块

    • 首先我们引入了 Node.js 的 readline 模块,它允许我们与命令行进行交互。
  2. 创建 readline 接口实例

    • 使用 readline.createInterface() 方法创建了一个新的 readline 接口实例,该实例绑定了标准输入(process.stdin)和标准输出(process.stdout)。
  3. 监听回车键

    • 使用 rl.on('line', callback) 方法监听用户的输入。当用户按下回车键时,会触发回调函数。
    • 在回调函数中,我们调用 rl.close() 关闭 readline 接口,并使用 process.exit(0) 终止进程。

通过这种方式,你可以在脚本执行完毕后暂停程序,直到用户按下回车键才退出程序。这种方法适用于简单的控制台应用程序,帮助你在调试过程中更方便地查看输出信息。


目前只知道这种方法:

require('readline').createInterface({
  input: process.stdin,
  output: process.stdout
}).question('Press enter to exit...', function () {
  process.exit();
});

参考:http://nodejs.org/api/readline.html#readline_readline_createinterface_options

为了实现在Node.js脚本运行完成后需要按回车键才能退出的功能,你可以使用readline-sync库来等待用户输入。readline-sync是一个简单易用的库,它允许你的程序同步地读取用户的输入。

示例代码

首先,你需要安装readline-sync库:

npm install readline-sync

然后,在你的Node.js脚本中引入并使用该库:

const readlineSync = require('readline-sync');

// 你的主逻辑代码
console.log("Hello, World!");

// 等待用户按回车键
readlineSync.question('按回车键退出...');

解释

  1. 安装 readline-sync:这一步是为了引入一个简单的同步读取用户输入的库。
  2. 引入库:在脚本中使用require方法引入readline-sync
  3. 执行业务逻辑:在这个例子中,业务逻辑只是输出一条消息“Hello, World!”。
  4. 等待用户输入:通过调用readlineSync.question()函数,可以让程序暂停并等待用户输入。当用户按下回车键时,控制台才会继续执行后续的代码,并最终退出。

这种方法非常适合用于命令行工具或者简单的脚本中,以确保用户有时间查看输出结果后再退出程序。

回到顶部