当我使用 anima 命令时 .bashrc 出现问题

当我使用 anima 命令时 .bashrc 出现问题

我需要使用 Anima 命令,而不必每次都写入整个路径。
我无法在 Anima 命令所在文件夹以外的文件夹中的内部文件上使用 animaConvertImage。我在配备 M1 处理器的 Mac 上使用 macOS。我尝试使用 .bashrc 文件,但无济于事,具体来说:

~/.bashrc-我通过以下方式将以下行添加到文件中:

gedit ~/.bashrc &

并补充道:

ANIMAHOME=~/Software/Anima/build

export PATH=$ANIMAHOME/bin:$PATH

export LD_LIBRARY_PATH=$ANIMAHOME/lib:$LD_LIBRARY_PATH

(我按照指南进行了操作,但我不知道它应该如何工作;包含 animaConvertImage 的 Anima 文件位于 . 中/Software/Anima/build/bin。)

最后,我保存并关闭终端以使更改生效。

然后我使用了命令:

animaConvertImage -i dwi/Noddi_Combined_Tensors_final.nrrd -I

使用 Software 文件夹外部的 dwi 文件夹,我总是得到输出:

-bash: animaConvertImage: command not found

我该如何解决这个问题? (我不确定这两者是否相互关联,因为我是初学者)

为了给您提供更多信息,我运行了以下命令:

$ ls -l ~/Software/Anima/build/bin/animaConvertImage
-rwxr-xr-x 1 lorenzomarta staff 3807134 14 Feb 16:07 /Users/lorenzomarta/Software/Anima/build/bin/animaConvertImage

$ ps -p $$
 PID TTY           TIME CMD
 3889 ttys000    0:00.08 -bash

答案1

交互式 bash(和其他)shell 有两大类:登录和非登录 shell。两者之间的主要区别在于启动 shell 时读取哪些文件,但请参阅上面的链接了解详细信息。与大多数 *nix 系统不同,macOS将默认启动登录 shell。这就是为什么您在 的输出中看到-bash而不是.bashps -p $$

登录 shell 不会读取~/.bashrc,而是读取~/.bash_profile(如果存在)或其他~/.profile文件(以及其他一些文件,所有这些文件都在上面的第一个链接中进行了解释)。因此,您所做的更改~/.bashrc将被忽略,因为您正在运行的 shell 是登录 shell。

因此,~/.bashrc您应该编辑~/.bash_profile(如果存在),而不是编辑 ,如果不存在,则编辑~/.profile。这些行是正确的,但您只是编辑了错误的文件。

相关内容