NodeJS执行npm run start时'clear'命令未识别报错,求解决方案
解决nodemon --exec clear命令无法清屏的问题
问题根源
你遇到的错误是因为Windows系统的命令行(CMD/PowerShell)不识别类Unix系统的clear清屏命令,Windows对应的清屏命令是cls。
解决办法
方法1:适配Windows系统
直接把脚本里的clear替换成cls,修改后的package.json脚本如下:
"scripts": { "start": "nodemon --exec 'cls && node' ./src/index.js -q" }
方法2:跨平台兼容(推荐)
如果需要在Windows、Linux、macOS上都能正常运行,有两种简便方式:
方式A:使用跨平台清屏工具
安装clear-cli,它会自动识别系统并调用对应清屏命令:
npm install clear-cli --save-dev
然后保持原脚本不变即可:
"scripts": { "start": "nodemon --exec 'clear && node' ./src/index.js -q" }
方式B:通过系统判断实现兼容
借助cross-env来处理跨平台的系统判断:
- 安装依赖:
npm install cross-env --save-dev
- 修改脚本:
"scripts": { "start": "cross-env-shell \"nodemon --exec '$(if [[ $OS == *Windows* ]]; then cls; else clear; fi) && node' ./src/index.js -q\"" }
另外,如果你的VS Code终端用的是WSL(Windows Subsystem for Linux),那clear命令本身是有效的,这种情况下检查终端类型是否设置正确即可。
内容的提问来源于stack exchange,提问作者Karthik Karthik
相关产品推荐
相关产品推荐

