Mac版Visual Studio控制台程序按任意键后出现额外文本,求解释及隐藏方法
问题解答
这段额外文本是什么?
你看到的这段内容是macOS终端会话结束时的默认系统提示。当Visual Studio在Mac上运行控制台应用时,它会启动一个临时终端会话来执行你的程序;等你按下任意键、程序运行完毕后,这个临时会话就会终止,macOS会自动执行保存会话历史、清理临时文件之类的后台操作,同时输出这些日志信息。
怎么隐藏这些额外文本?
这里有几个实用的解决方法,按推荐程度排序:
方法1:修改Visual Studio的运行配置(最省心)
- 打开你的控制台项目,点击顶部菜单栏的 Run -> Run Configurations -> Edit Configurations
- 在弹出的配置窗口里,找到Console选项卡,勾选 Run in external terminal(在外部终端中运行)
- 保存配置后重新运行程序,外部终端窗口在程序结束后会直接关闭,不会输出这些会话结束的日志
方法2:自定义程序的结束逻辑(针对性强)
在你的控制台程序末尾添加一段代码,让程序结束前等待输入后直接退出,跳过终端会话的终止流程:
// C#示例,放在Main方法最后 Console.WriteLine("按任意键退出..."); Console.ReadKey(true); // 捕获按键但不输出到控制台 Environment.Exit(0); // 直接退出程序,避免触发终端的会话结束日志
修改后,你按下任意键程序就会直接退出,终端不会触发系统的会话保存操作,自然就看不到那些额外文本了。
方法3:修改终端全局会话设置(不推荐,影响所有终端)
如果想全局禁用这类提示,可以修改shell的配置文件(取决于你用的是bash还是zsh):
- 打开终端,输入
open ~/.zshrc(用bash的话就输入open ~/.bash_profile) - 添加一行:
export SAVEHIST=0 - 保存文件后,输入
source ~/.zshrc让配置生效
这个方法会让终端不再保存命令历史,同时隐藏会话结束提示,但会影响你所有的终端会话,所以一般不建议这么做。
内容的提问来源于stack exchange,提问作者ewalk40
相关产品推荐
相关产品推荐

