最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Linux下通過sed命令對(duì)kv方式的配置文件進(jìn)行修改

 更新時(shí)間:2018年11月12日 16:45:38   投稿:mrr  
sed是unix下的面向字符流的編輯器,即stream editor, 它是面向行的,以行為單位進(jìn)行處理,同時(shí),sed是非交互式的,一旦執(zhí)行便要處理完整個(gè)文件。這篇文章主要介紹了Linux下通過sed命令對(duì)kv方式的配置文件進(jìn)行修改,需要的朋友可以參考下

sed是unix下的面向字符流的編輯器,即stream editor, 它是面向行的,以行為單位進(jìn)行處理,同時(shí),sed是非交互式的,一旦執(zhí)行便要處理完整個(gè)文件。

日常后臺(tái)服務(wù)配置文件多以key-value的方式存在,例如ini文件、toml文件或一些自定義配置文件,當(dāng)我們某些情況下需要編寫自動(dòng)化腳本對(duì)配置文件進(jìn)行更改的時(shí)候,我們可以通過shell的sed命令進(jìn)行正則匹配快速修改,十分簡(jiǎn)單快捷,減少很多“高級(jí)語言”編寫的繁瑣,下面主要列出兩種比較常見的配置變更情況和命令參考例子:

用于測(cè)試的配置文件 test.conf

$ cat test.conf 
max.connections = 100
test.log_path = "/tmp/test.log"
fsync=on

值帶引號(hào)的方式

#!/bin/bash
CONF=test.conf
set_key_value() {
  local key=${1}
  local value=${2}
  if [ -n $value ]; then
    #echo $value
    local current=$(sed -n -e "s/^\($key = '\)\([^ ']*\)\(.*\)$/\2/p" $CONF) # value帶單引號(hào)
    if [ -n $current ];then
      echo "setting $CONF : $key = $value"
      value="$(echo "${value}" | sed 's|[&]|\\&|g')"
      sed -i "s|^[#]*[ ]*${key}\([ ]*\)=.*|${key} = '${value}'|" ${CONF}
    fi
  fi
}
set_key_value "max.connections" "1024"
set_key_value "test.log_path" "/data/logs/test.log"

值不帶引號(hào)的方式

CONF=test.conf
set_key_value() {
  local key=${1}
  local value=${2}
  if [ -n $value ]; then
    #echo $value
    local current=$(sed -n -e "s/^\($key = \)\([^ ']*\)\(.*\)$/\2/p" $CONF) # value不帶單引號(hào)
    if [ -n $current ];then
      echo "setting $CONF : $key = $value"
      value="$(echo "${value}" | sed 's|[&]|\\&|g')"
      sed -i "s|^[#]*[ ]*${key}\([ ]*\)=.*|${key} = ${value}|" ${CONF}
    fi
  fi
}
set_key_value "fsync" "off"

總結(jié)

以上所述是小編給大家介紹的Linux下通過sed命令對(duì)kv方式的配置文件進(jìn)行修改,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 網(wǎng)站加速VPS篇 memcache和memcached安裝方法

    網(wǎng)站加速VPS篇 memcache和memcached安裝方法

    Memcache是一個(gè)自由和開放源代碼、高性能、分配的內(nèi)存對(duì)象緩存系統(tǒng)。用于加速動(dòng)態(tài)web應(yīng)用程序,減輕數(shù)據(jù)庫(kù)負(fù)載。
    2010-12-12
  • Linux自動(dòng)化構(gòu)建工具make和Makefile詳解

    Linux自動(dòng)化構(gòu)建工具make和Makefile詳解

    這篇文章主要介紹了Linux如何自動(dòng)化構(gòu)建工具make和makefile,文章中有詳細(xì)的圖片示例,對(duì)學(xué)習(xí)有一定的參考價(jià)值,感興趣的小伙伴可以參考一下
    2023-04-04
  • ubuntu16.04在python3 下創(chuàng)建Django項(xiàng)目并運(yùn)行的操作方法

    ubuntu16.04在python3 下創(chuàng)建Django項(xiàng)目并運(yùn)行的操作方法

    這篇文章主要介紹了ubuntu16.04在python3 下創(chuàng)建Django項(xiàng)目并運(yùn)行,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-09-09
  • 在Linux系統(tǒng)上刷新DNS緩存的方法

    在Linux系統(tǒng)上刷新DNS緩存的方法

    DNS是互聯(lián)網(wǎng)的一項(xiàng)服務(wù),它作為將域名和 IP 地址相互映射的一個(gè)分布式數(shù)據(jù)庫(kù),能夠使人更方便地訪問互聯(lián)網(wǎng),而不用記住能夠被機(jī)器直接讀取的 IP 數(shù)串,但是,有時(shí)候我們可能需要刷新或清除 DNS 緩存,本文將詳細(xì)介紹如何在Linux系統(tǒng)上刷新DNS緩存,需要的朋友可以參考下
    2024-06-06
  • Git fetch和pull的詳解及區(qū)別

    Git fetch和pull的詳解及區(qū)別

    這篇文章主要介紹了Git fetch和pull的詳解及區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • Ubuntu16.04安裝Jenkins的方法圖文詳解

    Ubuntu16.04安裝Jenkins的方法圖文詳解

    這篇文章主要介紹了Ubuntu16.04安裝Jenkins,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-11-11
  • 基于Ubuntu 16.04設(shè)置固定IP的方法教程

    基于Ubuntu 16.04設(shè)置固定IP的方法教程

    這篇文章主要給大家介紹了基于Ubuntu 16.04設(shè)置固定IP的方法教程,文中通過圖文以及示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-10-10
  • Trash-Cli:Linux上的命令行回收站工具

    Trash-Cli:Linux上的命令行回收站工具

    今天小編就為大家分享一篇關(guān)于Linux上的命令行回收站工具,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2018-09-09
  • Linux 常用文本處理命令和vim文本編輯器

    Linux 常用文本處理命令和vim文本編輯器

    這篇文章主要介紹了Linux 常用文本處理命令和vim文本編輯器,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2019-08-08
  • CentOS7安裝PHP7 Redis擴(kuò)展的方法步驟

    CentOS7安裝PHP7 Redis擴(kuò)展的方法步驟

    這篇文章主要介紹了CentOS7安裝PHP7 Redis擴(kuò)展的方法步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-04-04

最新評(píng)論

乌苏市| 梁山县| 新绛县| 临湘市| 万山特区| 佳木斯市| 鄂尔多斯市| 琼海市| 海原县| 封开县| 武安市| 焦作市| 沙湾县| 武威市| 泰州市| 秦安县| 玉屏| 噶尔县| 东丽区| 呼和浩特市| 伽师县| 宝应县| 安平县| 闵行区| 东兴市| 北宁市| 石狮市| 磐安县| 论坛| 济阳县| 贡山| 清徐县| 沅陵县| 隆子县| 宾阳县| 长寿区| 北辰区| 柯坪县| 马边| 和政县| 红桥区|