0

だから私はLinuxスクリプトに非常に慣れていません。.profile では、モジュールをロードしてから、ロードされたことを知らせるメッセージを出力したいだけですが、その順序で実行するとエラーが発生します。

私が持っているとき、それはうまく動作します:

echo "loading oracle/muscle..." module load oracle/muscle

(それは文字通り私が.profileに持っているすべてです)

私は持っていることを好みます:

module load oracle/muscle echo "oracle/muscle loaded"

しかし、これを行ってログインすると、「oracle/muscle のモジュールファイルが見つかりません」というエラーが返されます。ある種の構文エラーだと思いますが、この種のエラーを実際に説明しているものは見つかりませんでした。どんな助けでも大歓迎です。ありがとう!!

4

2 に答える 2

0

その部分が機能していると確信していますか:

echo "loading oracle/muscle..." module load oracle/muscle

??

コマンド「echo」と「module」を分離する必要があると思います。あなたの設定をテストしました(Debian 6、「モジュールロード」の代わりに「modprobe」を使用しました):

root@ian:~# lsmod | grep loop
root@ian:~#
root@ian:~# grep modprobe .profile
echo "Loading loop" modprobe loop
root@ian:~# source .profile
Loading loop modprobe loop
root@ian:~# lsmod | grep loop
root@ian:~#

上記のモジュール ループがロードされていません。私見は次のようになります。

root@ian:~# grep modprobe .profile
echo "Loading loop"; modprobe loop
root@ian:~# lsmod | grep loop
root@ian:~# source .profile
Loading loop
root@ian:~# lsmod | grep loop
loop                    9745  0
root@ian:~#

さらに、モジュールが正常に終了したときに「echo」を出力する方が良いでしょう:

module load oracle/muscle && echo "Module loaded"

親切にテストして、結果をお知らせください

于 2015-02-07T12:12:41.993 に答える