我在Linux上运行MATLAB,在我的主目录( /home/$USER )中存储空间有限 . 当MATLAB崩溃时,它会将故障转储文件( matlab_crash_dump.XXXX )放在我的主目录中 . 我想更改放置这些文件的目录 . 做这个的最好方式是什么?
/home/$USER
matlab_crash_dump.XXXX
您需要指定 MATLAB_LOG_DIR 环境变量 . MATLAB将使用它来存储所有故障转储 .
MATLAB_LOG_DIR
来自related MATLAB Central discussion:
如果已设置环境变量$ MATLAB_LOG_DIR,那么我们将编写故障转储文件 . 否则,在UNIX上查看$ HOME,或在Windows上查看$ TEMP,$ TMP,$ WINDIR,最后是C:\(按此顺序) . 该文件将命名为“matlab_crash_dump . $ pid”,其中$ pid是MATLAB的进程ID .
您可以在 .bashrc 文件中执行此操作
.bashrc
export MATLAB_LOG_DIR=/custom/dir
或者在运行任何命令之前(或在matlabrc file内)在MATLAB中
setenv('MATLAB_LOG_DIR', '/custom/dir')
如果您需要对此进行测试,则以下简单的mex文件将导致崩溃,从而导致崩溃转储文件 .
#include "mex.h" void mexFunction( int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[] ) { /* Access beyond the length of prhs */ size_t x = mxGetM(prhs[6]); }
1 回答
您需要指定
MATLAB_LOG_DIR
环境变量 . MATLAB将使用它来存储所有故障转储 .来自related MATLAB Central discussion:
您可以在
.bashrc
文件中执行此操作或者在运行任何命令之前(或在matlabrc file内)在MATLAB中
如果您需要对此进行测试,则以下简单的mex文件将导致崩溃,从而导致崩溃转储文件 .