从命令行批处理启动VS Code每小时输出update#setState信息的问题
解决VS Code通过批处理启动后命令窗口每小时输出更新日志的问题
我来帮你搞定这个烦人的日志输出问题!这些update#setState的日志其实是VS Code自动更新模块在向控制台打印状态信息,因为你的批处理启动方式没有完全把VS Code和原命令窗口的输出隔离开。下面给你几个靠谱的解决方案,按优先级排序:
方案1:修改批处理命令,彻底隔离输出
把你原来的批处理命令改成这样,通过重定向输出到空设备,就能把这些日志彻底屏蔽:
@Start "VisualStudioCode" "C:\Program Files\Microsoft VS Code\Code.exe" %* >nul 2>&1
解释一下:
>nul是把*标准输出(stdout)*重定向到空设备,丢弃普通输出2>&1是把*错误输出(stderr)*也重定向到和标准输出一样的地方,这样所有日志都会被丢掉- 这个方法最简单,不需要修改VS Code的任何设置,也不影响软件正常使用
方案2:在VS Code中调整更新相关设置
如果你不想完全屏蔽输出,只是不想看到更新状态的日志,可以通过VS Code的设置来调整:
- 打开VS Code,按
Ctrl+,快速打开设置界面 - 在顶部搜索框输入
update,找到对应设置:- 要是想直接关闭自动更新,把
Update: Enable Automatic Updates设置为false - 要是只是不想看到日志,找到
Update: Log Level,把它改成error或者off,这样只有严重错误才会输出,更新状态的日志就不会再出现了
- 要是想直接关闭自动更新,把
方案3:用start命令的/B参数(不推荐)
另一种方式是用start /B让VS Code在后台运行,但这样可能会导致VS Code窗口和原命令窗口关联——关闭命令窗口时VS Code也会被强制关掉,所以不太推荐这种方式:
@Start /B "VisualStudioCode" "C:\Program Files\Microsoft VS Code\Code.exe" %*
个人最推荐方案1,简单直接,一次性解决日志问题,完全不影响VS Code的正常使用。
内容的提问来源于stack exchange,提问作者gsxr1300
相关产品推荐
相关产品推荐

