How to 'who' the global workspace to a variable in a function ?

Hi,
I'm trying to do a "clear all but" function, i.e. clear all variables in the workplace except those who are specified : function [ ] = clearAllBut( var1, var2 ...)
I was thinking about getting the workspace variables names in a cell with : A = who('global') but it doesn't work since the call of who is within a function and retrieves the local workspace (which is empty because it is the first thing I do in my function).
Is there a way to really retrieve the global workspace variable names ?
Thank you for your help
Léo.

 Réponse acceptée

I don't see how retrieving the global workspace variables helps you. To clear all variables excluding some set, do
clearvars -except A B C
etc...

Plus de réponses (1)

José-Luis
José-Luis le 12 Nov 2012
This sounds like a job for keep4.

3 commentaires

Matt J
Matt J le 12 Nov 2012
Modifié(e) : Matt J le 12 Nov 2012
Maybe if you have an older MATLAB version...
Or if you prefer the simpler syntax

Connectez-vous pour commenter.

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by