sed は Unix の文字ストリーム エディタ、つまりストリーム エディタです。行指向であり、行単位で処理します。同時に、sed は非対話型であり、一度実行するとファイル全体を処理します。 日常のバックグラウンド サービス構成ファイルは、ini ファイル、toml ファイル、カスタム構成ファイルなど、ほとんどがキーと値の形式です。場合によっては、構成ファイルを変更するための自動スクリプトを記述する必要がある場合、シェルの sed コマンドを使用して、定期的なマッチングと迅速な変更を実行できます。これは非常にシンプルで高速であり、多くの「高級言語」で記述する手間が軽減されます。次に、主に 2 つの一般的な構成変更とコマンド リファレンスの例を示します。 テスト用の設定ファイル test.conf $ cat テスト.conf 最大接続数 = 100 test.log_path = "/tmp/test.log" fsync=オン 値を引用する方法 #!/bin/bash 設定 = test.conf set_key_value() { ローカルキー=${1} ローカル値=${2} [ -n $値 ]の場合; #echo $値 local current=$(sed -n -e "s/^\($key = '\)\([^ ']*\)\(.*\)$/\2/p" $CONF) # 一重引用符付きの値if [ -n $current ];then echo "$CONF の設定: $key = $value" 値="$(echo "${value}" | sed 's|[&]|\\&|g')" sed -i "s|^[#]*[ ]*${キー}\([ ]*\)=.*|${キー} = '${値}'|" ${CONF} フィ フィ } set_key_value "最大接続数" "1024" set_key_value "test.log_path" "/data/logs/test.log" 引用符なしの値 設定 = test.conf set_key_value() { ローカルキー=${1} ローカル値=${2} [ -n $値 ]の場合; #echo $値 local current=$(sed -n -e "s/^\($key = \)\([^ ']*\)\(.*\)$/\2/p" $CONF) # 一重引用符なしの値if [ -n $current ];then echo "$CONF の設定: $key = $value" 値="$(echo "${value}" | sed 's|[&]|\\&|g')" sed -i "s|^[#]*[ ]*${キー}\([ ]*\)=.*|${キー} = ${値}|" ${CONF} フィ フィ } set_key_value "fsync" "オフ" 要約する 上記は、Linux で sed コマンドを使用して kv 構成ファイルを変更する方法について紹介したものです。お役に立てば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
<<: mysql5.7.18 のインストール時にエントリが見つからない問題の解決方法
>>: Mac OS10.12 に mysql5.7.18 をインストールするチュートリアル
1. 現象早朝、オンライン テーブルにインデックスが追加されました。テーブル内のデータ量が大きすぎた...
序文開発中は、インターフェース要求の繰り返しによってさまざまな問題が発生することがよくあります。ネッ...
1. フォルダを削除する例: rm -rf /usr/java /usr/javaディレクトリとその...
この記事では、Vueで複数の画像を追加、表示、削除するための具体的なコードを参考までに紹介します。具...
Kubernetes は、アプリケーションの移植性とハイブリッド クラウド/マルチクラウドの展開をサ...
目次1. 概要2. Keepalivedを使用してNginxを自動的に再起動する2.1 シェルスクリ...
TypeScript バンドルwebpack 統合通常、実際の開発では、ビルド ツールを使用してコー...
目次序文:親切なヒント:変数1. 免責事項2. 譲渡3. 2つの小さな文法上の詳細変数の命名規則なぜ...
序文私はプログラマーとしてスタートした PHP プログラマーです。これまで、トレーニング コースで勉...
Crontab は定期的な実行を設定するために使用されるコマンドです。そのデーモン プロセスは cr...
MySQL 8 Windows版 zipインストール手順(ダウンロードアドレス) 1. ZIPファイ...
1. レイヤー4負荷分散の概要レイヤー 4 ロード バランシングとは何ですか?いわゆる 4 層負荷分...
html.cssオーバーフローの包括的な理解XML/HTML コードコンテンツをクリップボードにコピ...
この記事では、MySQL 8.0.15 winx64のインストールと設定方法を参考までに紹介します。...
MySQL を使用する際、フィールドをソートしたりクエリしたりすることがよくあります。通常は、中国語...