ファイルとの間で設定を読み書きするシェル スクリプトを使用して、Linux で構成ファイルを管理する必要がありcfgます。スクリプトで使用される既存の構成ファイルに新しいvalueaを書き込む次の関数があります。key
set_setting() {
sed -i "s/$1=[^ ]*/$1=$2/" $3
}
使用法:
set_setting keyname NewValue /home/Config.cfg
したがって、これはkeynameinの値をConfig.cfgに置き換えますNewValue。
コマンドをget_setting使用して構成ファイルを読み取る機能もあります。source同様に、2 つのパラメーターkeynameとソース構成ファイルを受け取りvalue、提供されたキーの を返します。
問題は、次のような構成ファイルがあることです。
name=Abc
surname=Xyz
そして、set_setting関数を as として呼び出すとset_setting name Def /home/Config.cfg、理想的には の値をnameからAbcに変更する必要Defがありますが、 key の値を変更するとともにname、 の値もsurnameからXyzに変更し、Def構成ファイルで次のようになります。
name=Def
surname=Def
これは、キーsurnameをに変更したときにsurnames期待どおりに機能し、 の値のみnameが変更されたため、両方のキーで「名前」という用語が共通しているためだと思われます。また、キーの値はスペース以外であれば何でもよいことに注意してください。
私はシェルスクリプトが初めてで、最近発見されたsedコマンドです。