匿名質問者

unixの質問


unix上でgaussian09というソフトを使います.
計算を実行する時のコマンドの意味が分からないのでご教授下さい.
gaussian09は/usr/local/g09にインストールされており,/workをワークディレクトリに使います.g09rootはg09ディレクトリがある場所で,GAUSS_SCRIDERはワークディレクトリの場所です.(すぐ分かる量子化学計算 より)

$ export g09root /usr/local
$ . $g09root/g09/bsd/g09.profile
$ export GAUSS_SCRIDER /work

二行目と三行目が分かりません.
「. $〜」とはどういった意味でしょうか?

$ PATH=$PATH:/usr/local/g09/bsd/g09.profile
$ export PATH
とするのとは異なりますか?

よろしければ解説お願いします.

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2015/11/19 17:40:03
匿名質問者

質問者から

匿名質問者2015/11/13 17:13:27

引用したコマンドを書き間違えました

$ export g09root=/usr/local

$ . $g09root/g09/bsd/g09.profile

$ export GAUSS_SCRIDER=/work

の間違いでした.1,3行目=が抜けていました.

引用は「新版 すぐできる量子化学計算 ビギナーズマニュアル」のp.33です.

シェルはbashを使います.

よろしくお願いします

回答1件)

匿名回答2号 No.1

export g09root=/usr/local

これは

g09root=/usr/local
export g09root

と同じ意味です。
この時のg09rootを環境変数と言います。環境変数は頭に"$"を付けて参照出来ます。
すなわち、

. $g09root/g09/bsd/g09.profile

は"$g09root"が"/usr/local"になって

. /usr/local/g09/bsd/g09.profile

と同じ意味になります。
最初の"."は"source"と同じ意味で

. filename [arguments]
source filename [arguments]
filename からコマンドを読み込み、現在のシェル環境の下で実行します。~

http://linuxjm.osdn.jp/html/GNU_bash/man1/bash.1.html#lbDB
という意味で環境変数やaliasなど環境設定に使う事が多いです。
また、環境変数はプログラムからも使えますので、ソフトの設定などで使ったりします。

匿名質問者

ありがとうございました!

2015/11/19 18:37:21
  • 匿名回答1号
    匿名回答1号 2015/11/12 18:19:40
    どこを参照して、そのコマンドをひねり出したのでしょうか。
    間違ってますよ。

    後半の2行も文法的には合ってますけど、意味としては間違ってます。
  • 匿名質問者
    匿名質問者 2015/11/13 09:09:16
    補足に参照したコマンドを書き直しました.
    後半の意味として間違っている理由を教えて頂けませんか?
  • 匿名回答1号
    匿名回答1号 2015/11/13 11:28:01
    PATH 環境変数に設定するのはディレクトリです。
    スクリプトファイルだと思われる g09.profile が含まれているのは意味を成しません。

    . や export 、$ の書式や意味は man bash で分かります。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません