bash 文件中的导出路径

bash 文件中的导出路径

我正在尝试在我大学的 HPC 中运行 Matlab 代码。代码是使用文件提交qsubbash

为了使用 Matlab R2019b,我被指示:要使用 Matlab R2019b,请将以下内容添加到脚本顶部的调度程序标志之后

export PATH=/username/local/matlab/bin:$PATH

我在做这件事时遇到了麻烦。目前,我的 bash 文件打开 Matlab R2015b(而不是 Matlab R2019b)。 (注意:我用我的实际用户名代替了用户名)。这是我的狂欢:

#$ -S /bin/bash
#$ -l h_vmem=4G
#$ -l tmem=4G
#$ -l h_rt=24:0:0
#$ -cwd
#$ -j y

#Run 3 tasks where each task has a different $SGE_TASK_ID ranging from 1 to 3
#$ -t 1-3

#$ -N try
date
hostname


#Output the Task ID
echo "Task ID is $SGE_TASK_ID"

export PATH=/username/local/matlab/bin:$PATH


matlab -nodisplay -nodesktop -nojvm -nosplash -r "main_1; ID = $SGE_TASK_ID; main_2; exit"

我也尝试过,export PATH=/username/local/matlabR2019b/bin:$PATH但问题仍然存在。

另外,如果我从终端输入,cd /home/username/local它会告诉我该文件夹不存在。这怎么可能?

答案1

要查找脚本正在使用哪个 matlab,请在命令行中尝试

PATH="/username/local/matlab/bin:$PATH"   ; export PATH

如果目录树中存在空格字符,则引号可保证正确分配命令的路径。然后输入

which matlab

这将为您提供 matlab 命令的完整路径,这应该让您深入了解什么优先以及为什么优先。有时,输出

whereis matlab

将为您提供其他提示来帮助解决 PATH 优先级问题。

如果您安装了多个 matlab,则可能需要清除有问题的那个。

如果您只安装了一个 matlab,则需要使用您喜欢的工具完全删除软件包(包括配置文件),然后重新安装该软件包。您可能会遇到一些适用于早期版本的旧配置值的问题。

相关内容