我的Shell學習筆記之數數Mysql配置文件的配置條目數量

****此腳本來自於慕課網,版權歸原作者所有****

腳本目的:查詢Mysql配置文件my.cnf 中某配置項(例如[mysqld])的配置條目數量,並輸出。

具體腳本如下:

#****
#Author: tomshen
#QQ: ×××
#Date: 2019-10-14
#Description: The test script
#Copyright (C): 2019 All rights reserved
#****
#輸出my.cnf配置文件的每個配置段的名稱,和每個配置段的配置項條目數

FILE_NAME=/etc/my.cnf

function get_all_segment
{
#獲取所有的段
declare -a mysql_array=$(sed -n '/[.*]/p' $FILE_NAME | sed -e 's/[//g' | sed -e 's/]//g')

for var1 in ${mysql_array[@]}
do
echo "$var1"
done
unset var1
unset mysql_aeeay

}

function count_items_in_segment
{
#獲取每個配置段的,配置條目的行數

    items=$(sed -n "/\[$1\]/,/\[.*]/p"  $FILE_NAME | grep -v ^# | grep -v ^$ | grep -v "\[.*\]")

    index=0
    for item in $items
    do
            index=`expr $index + 1`
    done
    echo $index

}

number=0
for segment in get_all_segment
do
number=expr $number + 1
items_count=count_items_in_segment $segment
echo "$number. 配置項: $segment 配置條目數:$items_count"

done

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章