25

在 node.js 中,如何获取控制台窗口和/或缓冲区的当前宽度?

.net 中的模拟是Console.BufferWidth和/或Console.WindowWidth

我想对换行进行更多控制。

4

2 回答 2

49

看起来目前最好的方法是这个属性:

process.stdout.columns

对于高度(行):

process.stdout.rows

另请注意,有一个“调整大小”事件,它可能会派上用场:

process.stdout.on('resize', function() {
  console.log('screen size has changed!');
  console.log(process.stdout.columns + 'x' + process.stdout.rows);
});

此处的文档: http ://nodejs.org/api/tty.html#tty_tty

于 2013-04-06T19:04:03.200 回答
17
if (process.stdout.isTTY) {
  console.log("The console size is:", process.stdout.getWindowSize());
} else {
  console.log("stdout is not a console");
} 
于 2012-06-08T22:05:59.120 回答