毎回フルパスを書かずに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
この問題をどのように解決できますか? (初心者なので、これらの2つが互いに関連しているかどうかはわかりません。)
より多くの情報を提供するために、次のコマンドを実行しました。
$ 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(およびその他)シェルには2つのカテゴリがあります。ログインおよび非ログインシェル。 2つの主な違いは、シェルの起動時にどのファイルを読み取るかです。詳細については上記のリンクを参照してください。ほとんどの* nixシステムとは異なり、macOSはデフォルトではログインシェルを起動します。。これがすぐの出力で見ることができる理由です-bash
。bash
ps -p $$
ログインシェルはを読み取らず~/.bashrc
に~/.bash_profile
(存在する場合)または他の~/.profile
ファイル(そしていくつかの異なるファイル、上記の最初のリンクですべて説明)を読みます。したがって、~/.bashrc
実行中のシェルはログインシェルであるため、変更は無視されます。
したがって~/.bashrc
、存在する場合は変更するのではなく、存在しない~/.bash_profile
場合は修正する必要があります~/.profile
。行は正確ですが、間違ったファイルを編集しました。