How to stop printing anything to command window?

115 vues (au cours des 30 derniers jours)
Saulius
Saulius le 5 Fév 2015
Commenté : Saulius le 13 Avr 2015
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.
  2 commentaires
Julia
Julia le 5 Fév 2015
Hi,
Why can't you delete
disp('b')
?
Saulius
Saulius le 5 Fév 2015
This is just an example. Actually I use function "mysql" link to function to connect to database and when it connect, it writes login info to command window. It's in C language and I am no expert in it... So I want to stop displaying any text to command window while I use this function to connect

Connectez-vous pour commenter.

Réponse acceptée

Jan
Jan le 5 Fév 2015
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.
  1 commentaire
Saulius
Saulius le 6 Fév 2015
So I assume there is no simple command similar to echo on/off. Oh well...

Connectez-vous pour commenter.

Plus de réponses (2)

Bernard
Bernard le 13 Avr 2015
doc evalc
  1 commentaire
Saulius
Saulius le 13 Avr 2015
works like charm. thank you :)

Connectez-vous pour commenter.


Alessandro Masullo
Alessandro Masullo le 5 Fév 2015
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
  1 commentaire
Saulius
Saulius le 5 Fév 2015
disp function is just for example. I do not want to print anything by any kind of function. Something like echo on/off for printing code but in this case turn off printing anything by anyone

Connectez-vous pour commenter.

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by