linux shell systeminfo

#!/bin/bash
#########################################################################
# File Name: systeminfo.sh
# Author: LookBack
# Email: admin#dwhd.org
# Version:
# Created Time: Sun 26 Jul 2015 05:53:31 PM CST
#########################################################################

uptime() {
#已開機時間
echo "系统开机时间:$(date -d "$(awk ‘{printf("%d\n",$1~/./?int($1)+1:$1)}’ /proc/uptime) second ago" +"%F %T")"
#已運行時間
awk ‘{a=$1/86400;b=($1%86400)/3600;c=($1%3600)/60;d=$1%60}{printf("系统已经运行%d天%d时%d分%d秒\n",a,b,c,d)}’ /proc/uptime
}

cpuinfo() {
#CPU型號
awk -F’:[ ]‘ ‘/model name/{printf ("CPU型号:%s\n",$2);exit}’ /proc/cpuinfo
#CPU細部
awk -F’:[ ]‘ ‘/physical id/{a[$2]++}END{for(i in a)printf ("%s号CPU\t线程数:%s\n",i+1,a[i]);printf("CPU总颗数:%s\n",i+1)}’ /proc/cpuinfo
#CPU頻率
awk ‘/model name/{print "CPU频率:"$NF;exit}’ /proc/cpuinfo
}

meminfo() {
#記憶體
awk ‘/MemTotal/{a=$2/(1024^2);if(a<1){a=$2/1024;printf ("内存:%dM\n",a~/\./?int(a)+1:a)}else printf("内存:%dG\n",a~/\./?int(a)+1:a)}’ /proc/meminfo
}

diskinfo() {
fdisk -l | awk ‘/(Disk )?\/dev\//’
}
case "$1″ in
cpu)
cpuinfo
;;
mem)
meminfo
;;
uptime)
uptime
;;
disk)
diskinfo
;;
all)
for i in `awk -F\( ‘/^([a-z]|[0-9]|_).*\(\)/{print $1}’ $0`; do $i && echo "";done
;;
*)
echo $"Usage: $0 {cpu|mem|uptime|disk|all}"
exit 2
esac

本篇發表於 未分類。將永久鍊結加入書籤。

發表迴響

您的電子郵件位址並不會被公開。 必要欄位標記為 *

*

您可以使用這些 HTML 標籤與屬性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>