私は、NASA のフェルミ広域望遠鏡のデータを利用する必要がある研究プロジェクトに取り組んでいます。NASA は、ユーザーが遭遇するデータを操作および利用するためのツール パッケージを提供していますが、インストール ガイドが不十分です。
これらのツール (モジュール) を正常にインストールしましたが、何らかの理由で、1 つのターミナル内でしか動作しないようです。別のターミナルを開いてモジュール (例: gtselect) を使用しようとすると、パッケージを最初にインストールした他のターミナルではコマンドが認識されますが、認識されません。
また、翌日の夜にコンピュータをシャットダウンするなど、端末を閉じるたびにソフトウェアを再インストールする必要があります。(この PC には、HDD を以前の状態に復元する可能性のあるハードドライブ保護ソフトウェアはありません)
ということで、長いパス名を何度も入力する手間を省くために、必要なときに毎回インストールを実行する bash シェル スクリプトを作成することにしました。しかし、何らかの理由で、bash スクリプトは機能せず、使用しようとしているツールは認識されません。
以下のコマンドを、この順序で 1 つずつ手動で入力すると、両方のパッケージが正しくインストールされて利用できるようになります。
cd /home/dwoodson/FermiScienceTools/ScienceTools/Ubuntu/BUILD_DIR
./configure
export FERMI_DIR=/home/dwoodson/FermiScienceTools/ScienceTools/Ubuntu
source $FERMI_DIR/fermi-init.sh
cd /home/dwoodson/HEASoft/heasoft-6.16/x86_64-unknown-linux-gnu-libc2.5/BUILD_DIR
./configure
export HEADAS=/home/dwoodson/HEASoft/heasoft-6.16/x86_64-unknown-linux-gnu-libc2.5
source $HEADAS/headas-init.sh
これらの行は、NASA のインストール ガイドから特別に提供されたものです。私が独自に考案したものではありません。
私はこれらの行をそのまま bash シェル スクリプトに入力しました。
#!/bin/bash
cd /home/dwoodson/FermiScienceTools/ScienceTools/Ubuntu/BUILD_DIR
./configure
export FERMI_DIR=/home/dwoodson/FermiScienceTools/ScienceTools/Ubuntu
source $FERMI_DIR/fermi-init.sh
cd /home/dwoodson/HEASoft/heasoft-6.16/x86_64-unknown-linux-gnu-libc2.5/BUILD_DIR
./configure
export HEADAS=/home/dwoodson/HEASoft/heasoft-6.16/x86_64-unknown-linux-gnu-libc2.5
source $HEADAS/headas-init.sh
1 つは正しくインストールされますが、もう 1 つはインストールされません。どなたか助けていただける方がいらっしゃいましたら、お知らせください。
ありがとう
答え1
結局、顔を手で覆う価値のある簡単な解決策があることがわかりました。私は次のコマンドを実行しようとしていました:
bash LoadTools.sh
私のスクリプトの名前はどこにLoadToals
ありますか。これにより、行われたすべての変更が子シェルに残り、親シェルは影響を受けないままになりました。つまり、configure ファイルによって行われたすべての変更は永続的ではなく、親シェルにも適用されませんでした。
代わりにコマンド: を使用したsource LoadTools.sh
ところ、完璧に動作しました。