whos
列出工作区中的变量及大小和类型
语法
说明
whos
按字母顺序列出当前活动工作区中的所有变量的名称、大小和类型。
whos -file
列出指定的 MAT 文件中的变量。filename
注意
安全注意事项:whos -file
命令在检查文件时可能会执行 MAT 文件中包含的代码。请避免对不受信任的 MAT 文件调用 whos -file
。
whos global
列出全局工作区中的变量。
whos ___
只列出指定的变量。此语法可与上述语法中的任何参数一起使用。var1 ... varN
whos ___ -regexp
只列出与指定的正则表达式匹配的变量。expr1 ... exprN
示例
显示工作区变量信息
显示 MAT 文件中存储的变量的信息
显示示例 MAT 文件 durer.mat
中存储的变量的所有信息。
whos -file durer.mat
Name Size Bytes Class Attributes X 648x509 2638656 double caption 2x28 112 char map 128x3 3072 double
在结构体数组中存储变量信息
将有关 durer.mat
中变量的信息存储在结构体数组 S
中。
S = whos('-file','durer.mat');
显示 S
的内容。
for k = 1:length(S) disp([' ' S(k).name ... ' ' mat2str(S(k).size) ... ' ' S(k).class]); end
X [648 509] double caption [2 28] char map [128 3] double
显示变量属性信息
创建具有各种属性的变量,然后显示它们的信息。
创建文件 show_attributes.m
,其中包含以下语句。
function show_attributes persistent p; global g; p = 1; g = 2; s = sparse(eye(5)); c = [4+5i 9-3i 7+6i]; whos
调用 show_attributes
。当 MATLAB® 执行 show_attributes
末尾的 whos
命令时,将列出每个变量及其相应的属性。
show_attributes
Name Size Bytes Class Attributes c 1x3 48 double complex g 1x1 8 double global p 1x1 8 double persistent s 5x5 128 double sparse
列出嵌套或匿名函数中的工作区变量
列出当前工作区中在嵌套函数中暂停的所有变量。
创建文件 whos_demo.m
,其中包含以下语句。
function whos_demo date_time = datestr(now,'dd-mmm-yyyy'); date_time_array = strsplit(date_time,{'-',''}); get_date(date_time_array); function get_date(d) day = d{1}; %#ok<*NASGU> mon = d{2}; year = d{3}; keyboard end end
运行 whos_demo
。MATLAB® 将在出现 keyboard
命令的行中暂停。
whos_demo
K>>
调用 whos
函数。MATLAB 将显示嵌套的 get_date
函数以及包含该嵌套函数的所有函数中的变量(按函数工作区分组)。
K>> whos
Name Size Bytes Class Attributes ---- whos_demo/get_date --------------------------------------- d 1x3 354 cell day 1x2 4 char mon 1x3 6 char year 1x4 8 char ---- whos_demo ------------------------------------------------ date_time 1x11 22 char date_time_array 1x3 354 cell
输入参数
var1 ... varN
— 要显示的变量
字符向量 | 字符串标量
要显示的变量,指定为一个或多个字符向量或字符串标量。使用 '*'
通配符来匹配模式。例如,whos A* S*
列出工作区中以 A
或 S
开头的所有变量的名称。
expr1 ... exprN
— 正则表达式
字符向量 | 字符串标量
定义要显示的变量的正则表达式,指定为一个或多个字符向量或字符串标量。例如,whos -regexp ^Mon ^Tues
仅列出工作区中以 Mon
或 Tues
开头的变量名称。有关创建正则表达式的详细信息,请参阅正则表达式。
filename
— MAT 文件的名称
字符向量 | 字符串标量
MAT 文件的名称,指定为字符向量或字符串标量。文件名可以包含完整路径、相对路径或部分路径。例如,whos -file myFile.mat
列出名为 myFile.mat
的 MAT 文件中的所有变量。whos -file
命令不返回文件 filename
filename
中任何 MATLAB 对象的大小。
数据类型: char
| string
输出参数
S
— 变量信息
嵌套结构体数组
变量信息,返回为包含每个变量的标量 struct
的嵌套结构体数组。每个标量 struct
都包含以下字段。
字段 | 描述 |
---|---|
| 变量的名称。 |
| 变量数组的维数。 |
| 为变量数组分配的字节数。
|
| 变量的类。如果变量没有值,则类是 |
| 如果是全局变量,则为 |
| 如果是稀疏变量,则为 |
| 如果是复变量,则为 |
| 包含以下字段的结构体:
|
| 如果是持久变量,则为 |
备选方法
您也可以使用当前文件夹浏览器的详细信息面板查看 MAT 文件的内容。在 MATLAB Online™ 中,要查看 MAT 文件的内容,请在文件浏览器中点击 MAT 文件右侧的预览按钮
来预览它们。
扩展功能
基于线程的环境
使用 MATLAB® backgroundPool
在后台运行代码或使用 Parallel Computing Toolbox™ ThreadPool
加快代码运行速度。
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
GPU 数组
通过使用 Parallel Computing Toolbox™ 在图形处理单元 (GPU) 上运行来加快代码执行。
此函数完全支持 GPU 数组。有关详细信息,请参阅Run MATLAB Functions on a GPU (Parallel Computing Toolbox)。
分布式数组
使用 Parallel Computing Toolbox™ 在集群的组合内存中对大型数组进行分区。
此函数完全支持分布式数组。有关详细信息,请参阅Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox)。
版本历史记录
在 R2006a 之前推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)