xshell可设置会话级和全局自动日志记录:在会话属性或全局选项中勾选“连接时开始日志记录”,指定含变量(如%n、%d、%t)的路径,设编码为utf-8,勾选“覆盖已存在文件”防阻断;手动启停仅限当前会话;需验证文件生成与内容写入,并严防敏感信息泄露。

你需要让Xshell每次连接服务器时自动把所有操作命令和返回结果存成文件,避免手动点“开始记录”漏掉关键步骤,也防止忘记关闭导致日志文件无限膨胀。
设置单个会话自动记录日志
右键已保存的会话 → 选择【属性】。
左侧导航栏点击【终端】→【高级】→【日志记录】。
勾选【连接时开始日志记录】,此时下方控件全部激活。
在“日志文件”区域,选择“使用以下文件”,然后输入路径和带变量的文件名,例如:D:\Xshell_Logs\%n_%d_%t.log。其中%n是会话名、%d是日期(格式为YYYYMMDD)、%t是时间(HHMMSS),这样每条会话都会生成唯一文件,不会覆盖。
务必勾选【覆盖已存在的文件】,否则同一时间重连会弹窗阻断连接流程。
全局默认自动记录(所有新会话生效)
菜单栏:工具 → 选项 → 全局选项 → 默认会话 → 编辑默认设置。
左侧选【日志记录】,勾选【连接时开始日志记录】。
设置日志路径:推荐用E:\Xshell_Default_Logs\%S_%Y%M%D_%h%m%s.log(%S为会话名,%Y%M%D为年月日,%h%m%s为时分秒),比基础变量更清晰。
编码必须设为Unicode(UTF-8),否则中文命令或报错信息会显示为乱码,后期无法检索关键词。
手动启动/停止当前会话日志(应急补救)
方法一:顶部菜单栏 → 文件 → 日志记录 → 开始(或停止)。
方法二:会话窗口空白处右键 → 日志 → 启动(或停止)。
这一步仅对当前已连接的会话有效,不改变会话属性设置,适合临时开启某次调试记录。
注意:如果该会话已配置了自动记录,菜单中的“启动”项会置灰不可点,这是正常状态,说明日志已在后台运行。
验证与查看日志文件
① 连接目标服务器后,立即打开你设定的日志路径,确认对应命名的.log文件是否已创建且大小随命令执行增长。
② 在Xshell中执行一条简单命令如pwd,再立刻去日志文件里搜索该字符串,确认内容实时写入无延迟。
③ 查看大日志文件时,不要双击用记事本打开——容易卡死。直接在Xshell中运行:tail -n 200 "D:\Xshell_Logs\test_20260530_172401.log",快速读取末尾200行。
敏感操作(如输入密码、密钥内容)一旦被记录,日志文件即含高危信息,【切勿将日志目录设在共享盘或上传至公共平台】。










