如何让VSCode Remote SSH自动保存远程会话终端日志?
实现VSCode Remote SSH终端会话自动日志记录
下面提供三种可行方案,按需选择:
方案一:借助VSCode扩展自动记录
- 安装
Terminal Logging扩展,打开扩展的设置面板:- 开启
Auto Log选项,设置日志存储的本地或远程路径 - 配置日志文件名规则(比如包含时间戳),实现类似Putty的按会话生成独立日志文件
- 开启
方案二:远程端脚本自动触发日志记录(推荐,完全模拟Putty会话日志)
通过修改远程Linux机器的shell配置,让每次SSH连接(包括VSCode终端)自动启动会话记录:
- 在远程机器上创建日志脚本
~/ssh_session_logger.sh,写入以下内容:#!/bin/bash # 定义日志存储目录 LOG_DIR="$HOME/.ssh_session_logs" # 确保目录存在 mkdir -p "$LOG_DIR" # 按时间戳生成日志文件名 LOG_FILE="$LOG_DIR/ssh_session_$(date +%Y%m%d_%H%M%S).log" # 用script命令记录会话,-q静默模式,-c指定启动当前shell script -q -c "$SHELL" "$LOG_FILE" - 给脚本添加执行权限:
chmod +x ~/ssh_session_logger.sh - 修改你的shell配置文件(比如
~/.bashrc或~/.zshrc,根据使用的shell),添加一行:
如果VSCode连接时使用的是非交互式shell,可将上述行添加到source ~/ssh_session_logger.sh~/.bash_profile中
方案三:VSCode内置终端日志功能
- 打开VSCode设置(快捷键
Ctrl+,),搜索Terminal > Integrated: Enable Persistent Logging并勾选 - 日志会保存到VSCode的本地日志目录,不过该方案是合并记录所有终端输出,无法按单个SSH会话拆分
内容的提问来源于stack exchange,提问作者Kalesha Gagguturu
相关产品推荐
相关产品推荐

