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;

相关推荐
认真的酒窝1 小时前
自己动手开发编译器(十一)语义分析
java·开发语言
wbs_scy2 小时前
Linux C++ 高并发编程:线程池全链路深度解析,从原理到手撕实现
java·开发语言
JAVA面经实录9172 小时前
Linux 常用命令完整知识体系
java·linux·开发语言·汇编
贪玩的蛋挞3 小时前
C#与闭包
开发语言·c#
端庄的战斗机3 小时前
javascript 设计模式(文章很长,请自备瓜子,水果和眼药水)
开发语言·javascript·设计模式
Full Stack Developme4 小时前
Java LRU 与 LFU 算法及应用
java·开发语言·算法
C语言小火车5 小时前
C++ 堆排序深度精讲:基于完全二叉树的选择排序进化,最坏情况 O(n log n) 的稳定王者
开发语言·c++·算法·排序算法·堆排序
北冥you鱼5 小时前
abigen 最佳实践:从入门到精通,高效生成 Go 语言合约绑定
开发语言·golang·区块链
WL_GCS6 小时前
Level-2 MATLAB S-Function解析
matlab·simulink
ALex_zry6 小时前
C++26 std::complex 结构化绑定详解:auto [re, im] = c
c语言·开发语言·c++