How can I save the MATLAB Command Window output to a text file?

조회 수: 620 (최근 30일)
How can I save the MATLAB command window output to a text file?

채택된 답변

MathWorks Support Team
MathWorks Support Team 2022년 3월 7일
편집: MathWorks Support Team 2022년 3월 7일
The easiest way is to use the "diary" function:
It will create a log file that contains keyboard input and result output. You can also customize the name for the output file. For example, to write into "myDiaryFile", execute:
diary myDiaryFile
a = 1;
b = sin(a);
x = ones(4)
diary off
Please note that the content in the command window might not be written into the log file right away. You can force the writing by toggling the switch for "diary" function. Example code:
diary on
a = 2 % Output of this line might not be written to file right away
diary off % until this command is executed
diary on % You could put diary 'on' if you want to log more command window output
a = 3
diary off
  댓글 수: 2
laurent jalabert
laurent jalabert 2021년 12월 22일
편집: laurent jalabert 2021년 12월 22일
diary is working well, however, when displaying a table, the headers are in bold characters, but the diary will generate a text file containing the html balise like <strong>Estimate</strong>
For instance, when using non linear regression fit, the mdl generates output with Estimate, SE, ... and they are displayed with the balise in the diary, which is not elegant, like this :
<strong>Estimate</strong> <strong>SE</strong> <strong>tStat</strong> <strong>pValue</strong>
<strong>___________________</strong> <strong>___________________</strong> <strong>________________</strong> <strong>____________________</strong>
Is there any way to remove the <strong> in diary text file ? Can a diary be recorded as html ?
laurent jalabert
laurent jalabert 2022년 1월 5일
Sorry, I answer myself, which is not good. But my intention is to help people who may have similar problem.
When using non linear regression fit, the model mdl is displayed in the command window, with showing a table, with headers in bold characters. However, if like me, you use the command window and diary function to record the status of your running program, then the text file of the diary will display those bold character with the html code, which is not elegant. So it is possible to remove the bold character by using this function : formattedDisplayText(mdl,"SuppressMarkup",true)
section(formattedDisplayText(mdl,"SuppressMarkup",true));
function section(texte)
str_section = "*************************************";
disp(newline+ str_section + newline + texte + newline + str_section);
end
Once again, I sorry for answering my own questions, but I asked the question several weeks ago, and in between I continued my effort to find a solution, then I share it.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

laurent jalabert
laurent jalabert 2021년 2월 10일
편집: laurent jalabert 2021년 2월 10일
diary_name = strcat(datestr(now),'_diary.txt');
diary_folder = pwd;
diary(diary_name)
disp(datestr(now))
diary off
(I am not sure diary off will stop the currently running diary(diary_name) ...)
It will be nice to write like this :
diary(diary_folder, diary_name,'on')
diary(diary_folder,diary_name,'off')

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

태그

아직 태그를 입력하지 않았습니다.

제품


릴리스

R2017a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by