• ベストアンサー

複数bashスクリプトの定数?の共通化

たとえば以下のように A.bash、B.bash、C.bash の3つのbashスクリプトがあるときに それぞれの先頭で export OutFile=/aaa/bbb/ccc.txt と設定していたとします このとき、 何らかの事情で以下のよう export OutFile=/aaa/ggg/ccc.txt 変えなければならなくなった時に、 じか書きしている場合3ファイルとも 編集しなくてはいけません そうではなくて A.bash、B.bash、C.bashの3スクリプトの先頭で 設定ファイルを読み込んで export OutFile=/aaa/bbb/ccc.txt を取得するようにし、以下のように変更が発生した 場合も、 export OutFile=/aaa/ggg/ccc.txt 設定ファイルひとつだけ編集すればいいように したいのですが、そのようなことはできるのでしょうか? 説明べたでわかりにくいかも知れませんがお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • MASA_H
  • ベストアンサー率42% (64/151)
回答No.1

別のファイルに OutFile=/aaa/bbb/ccc.txt のように書いて保存します。このときファイル名を/hoge/hogeとしたとします。 次に対象となるスクリプトの先頭に . /hoge/hoge と記述します。 これでいけるはずです。

その他の回答 (1)

noname#168973
noname#168973
回答No.2

#1さんの仰ってる通りですが、もう一つ別のアイデアを。 export しているという事は、この変数は環境変数です。 と言う事は、A, B, C がもしも同一の実行環境で実行(もしくは AからBやCを実行するなど継承関係で実行)されるのであれば、そのおおもとで一度だけ定義するだけで全てに継承されます。 結果、記述は一箇所にすることができます。 如何でしょうか? ^^)