如何自动记录ConEmu会话输出?含Bash启动及远程连接场景
当然可以实现ConEmu会话输出的自动记录!
你的思路完全没问题——不管是本地Bash还是远程SSH连接的输出,只要能在ConEmu窗口显示,就可以被自动捕获记录,和PuTTY的效果一致。下面给你两种实用的配置方式:
一、全局自动记录(所有新会话都自动开启)
这种方式适合希望所有ConEmu会话都默认记录输出的场景:
- 按下快捷键
Win+Alt+P打开ConEmu的设置界面 - 在左侧导航栏依次展开「Features」→「Log files」
- 勾选 Auto log new console sessions 选项
- 在「Log file pattern」中设置日志文件的保存路径和命名规则,比如:
这个格式会按「年-月-日-时-分-秒」生成唯一的日志文件,避免覆盖C:\ConEmuLogs\session_log_%Y%m%d_%H%M%S.txt - 还可以根据需求勾选附加选项:
- Append to existing log file:将新会话的输出追加到同一个日志文件中(而不是新建文件)
- Include timestamps:在每一行日志前添加时间戳,方便回溯操作时间
- 点击「Save settings」保存配置,之后所有新开的会话都会自动开始记录输出
二、针对特定任务配置(仅指定会话自动记录)
如果只需要让Bash或远程SSH这类特定会话自动记录,可以给对应任务单独配置:
- 打开设置界面,左侧切换到「Tasks」标签页
- 找到你常用的任务(比如默认的「{Bash}」,或者你自己创建的远程SSH连接任务),点击「Edit」编辑
- 在任务的「Command line」末尾添加日志参数:
- 新建日志文件:
-new_console:log:C:\ConEmuLogs\bash_session.txt - 追加到已有日志:
-new_console:log+:C:\ConEmuLogs\bash_session.txt
- 新建日志文件:
- 举个远程SSH的例子,修改后的命令行可能是:
ssh your_username@remote_host -new_console:log:C:\ConEmuLogs\remote_host_log.txt - 保存任务配置后,每次启动这个任务就会自动将输出记录到指定文件
小补充
- 如果中途需要手动开启/关闭记录,可以按下快捷键
Ctrl+Alt+L,ConEmu会弹出窗口让你选择日志保存路径(未开启自动记录时可用) - 日志文件会完整包含窗口中显示的所有内容,包括你输入的命令和系统/远程主机返回的输出,和PuTTY的记录逻辑一致
内容的提问来源于stack exchange,提问作者Gaetan
相关产品推荐
相关产品推荐

