Matlab的命令行窗口内容的记录-利用diary记录日志/保存命令窗口输出

问题

Matlab的命令行窗口内容的记录-利用diary记录日志/保存命令窗口输出

怎么操作

解决方案

在 MATLAB 中,你可以使用 diary 命令来记录命令行窗口的所有输出 (包括 dispfprintf、警告、错误信息等),保存到一个日志文件中。非常适合做日志追踪或调试记录。


✅ 基本用法

开始记录输出到文件:

matlab 复制代码
diary('logfile.txt')   % 开始记录,保存到 logfile.txt

文件将被保存在当前工作目录下。

停止记录:

matlab 复制代码
diary off

重新开始(追加模式):

matlab 复制代码
diary on

🧠 补充说明

  • 如果你再次运行 diary('logfile.txt'),它会覆盖原文件;
  • 如果你想"追加"而不是"覆盖",先使用 diary on,不要指定文件名;
  • 如果你不 diary off,文件将持续记录你所有输出,直到 MATLAB 关闭或你手动关闭。

✅ 使用范例:在脚本或主函数中记录运行日志

matlab 复制代码
% 开始记录
logfile = ['runlog_', datestr(now, 'yyyymmdd_HHMMSS'), '.txt'];
diary(logfile);

disp('🟢 开始运行主程序...');

% 执行主程序
main_ga_optimize;

disp('✅ 程序运行完毕。');
diary off;

✅ 查看日志内容

你可以直接在 MATLAB 中打开:

matlab 复制代码
edit logfile.txt

或者用系统文本编辑器查看(如 Notepad)。


✅ 日志中包含什么?

内容类型 是否记录
disp(...)
fprintf(...)
报错信息
警告信息
输入命令 ✅(如果是命令窗口交互输入)

✅ 实战建议

你可以在 GA 优化任务前后包裹:

matlab 复制代码
diary('ga_runlog.txt');
fprintf('开始时间:%s\n', datestr(now));

% run your GA...

fprintf('结束时间:%s\n', datestr(now));
diary off;

相关推荐
艾莉丝努力练剑3 小时前
【LeetCode&数据结构】单链表的应用——反转链表问题、链表的中间节点问题详解
c语言·开发语言·数据结构·学习·算法·leetcode·链表
倔强青铜37 小时前
苦练Python第18天:Python异常处理锦囊
开发语言·python
u_topian7 小时前
【个人笔记】Qt使用的一些易错问题
开发语言·笔记·qt
珊瑚里的鱼8 小时前
LeetCode 692题解 | 前K个高频单词
开发语言·c++·算法·leetcode·职场和发展·学习方法
AI+程序员在路上8 小时前
QTextCodec的功能及其在Qt5及Qt6中的演变
开发语言·c++·qt
Risehuxyc8 小时前
C++卸载了会影响电脑正常使用吗?解析C++运行库的作用与卸载后果
开发语言·c++
AI视觉网奇8 小时前
git 访问 github
运维·开发语言·docker
不知道叫什么呀8 小时前
【C】vector和array的区别
java·c语言·开发语言·aigc
liulilittle8 小时前
.NET ExpandoObject 技术原理解析
开发语言·网络·windows·c#·.net·net·动态编程