学习readline

166 阅读1分钟

实现一个清理终端屏幕功能,类似clear命令。

import readline from 'node:readline'

function clearScreen() {
  // 终端的总行数 - 2
  const repeatCount = process.stdout.rows - 2

  // 绘制“清屏”
  const blank = repeatCount > 0 ? '\n'.repeat(repeatCount) : ''
  console.log(blank)

  // 将光标移动到,0列0行,并清除屏幕到底部的内容。
  readline.cursorTo(process.stdout, 0, 0)
  readline.clearScreenDown(process.stdout)
}

clearScreen()