此腳本已經在ubuntu以及centos版本上測試通過,腳本如下:
Line='==========='
#linux發行版名稱
if [[ -f /usr/bin/lsb_release ]]; then
OS=$(/usr/bin/lsb_release -a |grep Description |awk -F : '{print $2}' |sed 's/^[ /t]*//g')
else
OS=$(cat /etc/issue |sed -n '1p')
fi
echo -e "${Line}/nOS:/n${OS}/n${Line}"
######################################################################################################
#查看系統是否為64位:uname -m,若出現x86_64,則為64位
OS_version=$(uname -m)
echo -e "OS_version:/n${OS_version}/n${Line}"
#系統內核版本
kernel_version=$(uname -r)
echo -e "Kernel_version:/n${kernel_version}/n${Line}"
#cpu型號
CPU=$(grep 'model name' /proc/cpuinfo |uniq |awk -F : '{print $2}' |sed 's/^[ /t]*//g' |sed 's/ /+/ /g')
echo -e "CPU model:/n${CPU}/n${Line}"
#物理cpu個數
Counts=$(grep 'physical id' /proc/cpuinfo |sort |uniq |wc -l)
echo -e "Total of physical CPU:/n${Counts}/n${Line}"
#物理cpu內核數
Cores=$(grep 'cpu cores' /proc/cpuinfo |uniq |awk -F : '{print $2}' |sed 's/^[ /t]*//g')
echo -e "Number of CPU cores/n${Cores}/n${Line}"
#邏輯cpu個數
PROCESSOR=$(grep 'processor' /proc/cpuinfo |sort |uniq |wc -l)
echo -e "Number of logical CPUs:/n${PROCESSOR}/n${Line}"
#查看CPU當前運行模式是64位還是32位
Mode=$(getconf LONG_BIT)
echo -e "Present Mode Of CPU:/n${Mode}/n${Line}"
#查看CPU是否支持64位技術:grep 'flags' /proc/cpuinfo,若flags信息中包含lm字段,則支持64位
Numbers=$(grep 'lm' /proc/cpuinfo |wc -l)
if (( ${Numbers} > 0)); then lm=64
else lm=32
fi
echo -e "Support Mode Of CPU:/n${lm}/n${Line}"
######################################################################
#Memtotal 內存總大小
Total=$(cat /proc/meminfo |grep 'MemTotal' |awk -F : '{print $2}' |sed 's/^[ /t]*//g')
echo -e "Total Memory:/n${Total}/n${Line}"
#系統支持最大內存
Max_Capacity=$(dmidecode -t memory -q |grep 'Maximum Capacity' |awk -F : '{print $2}' |sed 's/^[ /t]*//g')
echo -e "Maxinum Memory Capacity:/n${Max_Capacity}/n${Line}"
#查看內存類型、頻率、條數、最大支持內存等信息:dmidecode -t memory,或dmidecode | grep -A16 "Memory Device$"
#下面為統計內存條數
Number=$(dmidecode | grep -A16 "Memory Device$" |grep Size|sort |sed 's/^[ /t]*//g'| grep -v 'No Module Installed' | wc -l)
echo -e "Number of Physical Memory:/n${Number}/n${Line}"
#SwapTotal swap分區總大小
SwapTotal=$(cat /proc/meminfo |grep 'SwapTotal' |awk -F : '{print $2}' |sed 's/^[ /t]*//g')
echo -e "Total Swap:/n${SwapTotal}/n${Line}"
#Buffers size
Buffers=$(cat /proc/meminfo |grep 'Buffers' |awk -F : '{print $2}' |sed 's/^[ /t]*//g')
echo -e "Buffers:/n${Buffers}/n${Line}"
#Cached size
Cached=$(cat /proc/meminfo |grep '/<Cached/>' |awk -F : '{print $2}' |sed 's/^[ /t]*//g')
echo -e "Cached:/n${Cached}/n${Line}"
#空閑內存 + buffers/cache
Available=$(free -m |grep - |awk -F : '{print $2}' |awk '{print $2}')
echo -e "Available Memory:/n${Available} MB/n${Line}"
#顯示硬盤,以及大小
Disk=$(fdisk -l |grep 'Disk' |awk -F , '{print $1}' | sed 's/Disk identifier.*//g' | sed '/^$/d')
echo -e "Amount Of Disks:/n${Disk}/n${Line}"
#各掛載分區使用情況
Partion=$(df -hlP |sed -n '2,$p')
echo -e "Usage Of partions:/n${Partion}/n${Line}"
新聞熱點
疑難解答