私は現在、source
コマンドですべての設定変数を読み込むスクリプトを使用しています。すばやく効果的です。しかし、私はそれが非常に安全な選択肢ではないことを理解しています。ソースの代わりにgrep lookup/cut関数を使用して、bashの設定ファイルを読み込みます。
私は同じ結果を達成するために$include
指示を使用できることを読んだ。 source
と違っていて安全か、それとも本質的に同じですか?
上記の2つのオプションが安全でない場合は、シェルスクリプトブックで見つけたlookup
関数を理解しようとしています。基本的にはgrep
、区切り文字、cut
を使用してファイルから変数名の検索を行い、その値を取得します。これは安全だと私はスクリプトを変更するために使用することができます。
ほとんどそのままです。私は区切り文字を$ TABから "="に変更する必要があると思うが、それがどういう仕組みか、それがどういう意味か分からない。
私の設定ファイルのフォーマット:(ノートから)
Param=value
サンプル機能
lookup() {
grep "^$1$TAB" "$2" | cut -f2
}
用途:
lookup [options] KEY FILE
-f sets field delimiter
-k sets the number of field which has key
-v specifies which field to return
私はRaspbian Jessie LiteのDebian版を使用しています。
ありがとうございます。 '$ include'はオプションですか? – dbmitch
標準のシェルユーティリティには '$ include'指示文はありません。 'bash。/ otherscript.sh'を使ってシェルスクリプトの中から他のシェルスクリプトを呼び出すことはもちろん可能です。 – anubhava
しかし、それはサブシェルを実行します。他の言語の '$ include'に相当するBashは間違いなく' source'です。 – tripleee