我知道这可以通过以下方式从终端手动完成:
echo -n -e "\033]0;My terminal tab title\007"
我尝试将其放入console.log
和process.stdout.write
并摆弄逃脱,但我无法让它发挥作用。
答案 0 :(得分:17)
为了节省阅读这段时间的人,这里有一个以严格模式执行的功能:
function setTerminalTitle(title)
{
process.stdout.write(
String.fromCharCode(27) + "]0;" + title + String.fromCharCode(7)
);
}
答案 1 :(得分:2)
有节点库:node-bash-title
安装库:
npm install node-bash-title --save
在你的剧本中:
const setTitle = require('node-bash-title');
setTitle(' Server');
此包还提供可执行脚本。您可以在npm脚本中使用它。例如:
"scripts": {
"start:dev": "set-bash-title server && node server/app.js"
"start:prod": "node server/app.js"
},
因此,您可以从代码中删除标题脚本。此外,仅在您要设置标题(在开发模式下)时才设置标题。在生产模式下,您可能不想设置标题,因为您的脚本可能无法在XTerm中执行:)