cat server_version.sh
#!/bin/bash
##輸出系統某幾個服務狀態和某幾個版本版本
##變數
system
='systemctl status'
system_name=
"neutron-linuxbridge-agent.service openstack-nova-api.service openstack-glance-api.service openstack-nova-compute.service mariadb.service rabbitmq-server.service etcd.service"
##for迴圈和if判斷-服務狀態並輸入顏色
>
status.log
for i in $system_name
doname
=`$system $i | awk 'nr==1 '`
status
=`$system $i | awk '/active/ ' | awk -f '(' '' | awk -f ')' ''`
if [ $status
== running ]
then
echo -e "\033[32m$name
-$status\033[0m" >
>
status.log
else
echo -e "\033[31m$name
-failed\033[0m" >
>
status.log
fidone
#awk 擷取行變數
neutron1=`cat status.log | awk 'nr==1'`
nova1=`cat status.log | awk 'nr==2'`
glance1=`cat status.log | awk 'nr==3'`
mariadb1=`cat status.log | awk 'nr==4'`
rabbitmq1=`cat status.log | awk 'nr==5'`
etcd1=`cat status.log | awk 'nr==6'`
#date輸出時間
echo -e "\033[32m+--
----
----
----
----
----
----
----
----
----
----
----
----
----
--+\033[0m"
echo -e "| \t \033[45
;37m `date` \033[0m \t |"
echo -e "\033[32m+--
----
----
----
----
----
----
----
----
----
----
----
----
----
--+\033[0m\n"
#輸出服務狀態
echo -e "\033[32m+--
----
----
----
----
----
----
----
----
----
----
----
----
----
--+\033[0m"
echo -e "| \t \t \033[45
;37m server_status \033[0m \t \t \t |"
echo -e "\033[32m+--
----
----
----
----
----
----
----
----
----
----
----
----
----
--+\033[0m"
echo "$neutron1 $nova1 $glance1 $mariadb1 $rabbitmq1 $etcd1" | awk ''
echo -e "\033[32m+--
----
----
----
----
----
----
----
----
----
----
----
----
----
--+\033[0m\n"
#all=
($neutron1 $nova1 $glance1 $mariadb1 $rabbitmq1 $etcd1)
#for i in $
#do#echo "$i"
#if [ $i =
= running ]
#then
#echo -e "\033[32m$i\033[0m" #| awk ''
#else
#echo -e "\033[31m$i\033[0m"
#fi#done
#echo "+-----------------------------------------+"
neutron=`rpm -qa openstack-neutron-linuxbridge`
nova=`rpm -qa openstack-nova-api`
glance=`rpm -qa openstack-glance`
compute=`rpm -qa openstack-nova-compute`
mariadb=`rpm -qa mariadb`
rabbitmq=`rpm -qa rabbitmq-server`
etcd=`rpm -qa etcd`
#輸出服務版本
echo -e "\033[32m+--
----
----
----
----
----
----
----
----
----
----
----
----
----
--+\033[0m"
echo -e "| \t \t \033[45
;37m server_version \033[0m \t \t \t |"
echo -e "\033[32m+--
----
----
----
----
----
----
----
----
----
----
----
----
----
--+\033[0m"
echo "$neutron $nova $glance $compute $mariadb $rabbitmq $etcd" | awk ''
echo -e "\033[32m+--
----
----
----
----
----
----
----
----
----
----
----
----
----
--+\033[0m"
#效果
shell指令碼判斷某服務是否執行
shell指令碼判斷某服務是否開啟 指令碼如下 bin bash 檢查服務狀態,是否安裝 read p 請輸入要檢測的服務 service netstat anp grep service dev null if eq 0 then echo service服務已經啟動!else rpm q ser...
shell指令碼 判斷某服務是否開啟
shell指令碼判斷某服務是否開啟 指令碼如下 命令 輸出上一條命令是否正確,結果為0,結果為非0,但不輸出結果 命令 echo 輸出上一條命令是否正確,正確輸出0,錯誤輸出1。結果輸出 bin bash 檢查服務狀態,是否安裝 read p 請輸入要檢測的服務 service netstat an...
Shell程式設計 監控檢查系統某程序控制代碼使用量
題目要求 使用shell指令碼監控檢查系統某程序控制代碼使用量 分析 在對應用服務進行維護時,也經常遇到由於控制代碼使用 過量導致業務中斷的情況。每個平台對程序的控制代碼使用都是有限的,例如在 linux 平台,我們可以使用 ulimit n 命令 open files n 1024 或者對 etc...