How to stop printing anything to command window?
83 次查看(过去 30 天)
显示 更早的评论
I need to stop printing to command window for some part of my code. Suppose I have a code:
disp('a');
disp('b');
disp('c');
Output would be
a
b
c
However, I want to stop printing in some parts to command window even if there is disp(), sprinft() or anything that prints... So I am looking for a command to be used like this:
disp('a');
stop printing
disp('b');
start printing
disp('c');
to get a result
a
c
The reason I need this is that I made a windows batch file, which only opens command window and shows that is printied by my script. In this script, connection information to database is automatically printed (login,password) and I do not want that printed. There are few work arounds: change connection to database functions so that login info wouldn't be printed (however they are not in matlab format, so difficult to change) or instead of using command window, create some txt file, write all info I want to show to it and automatically open it. But I hope there is a simple command to do it.
Function disp() is only an EXAMPLE. I have no idea what kind of code prints my logon information to command window.
采纳的回答
Jan
2015-2-5
Replace the disp() with an own function, which allows such a switching:
function sdisp(Data, Toggle)
persistent enabled
if isempty(enabled)
enabled = true;
end
if nargin == 2
enabled = any(Toggle);
return;
end
if enabled
disp(Data);
end
Now sdisp('dummy', false) disables printing. "dummy" is not so smart, perhaps you invent a nicer String, although it is ignored in any case.
更多回答(2 个)
Alessandro Masullo
2015-2-5
The best solution would be using disp inside an if statement. A really bad soulution (still working) would be replacing the function "disp" with a dummy function:
function disp(varargin)
return
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Entering Commands 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!