shell脚本获取系统相关信息
来源:互联网 发布:淘宝怎么开店步骤图解 编辑:程序博客网 时间:2024/04/29 01:48
[root@localhost ~]# cat test.sh
#!/bin/bash
#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位
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}"
测试结果:
[root@localhost ~]# sh test.sh
OS:
CentOS release 5.8 (Final)
OS_version:
x86_64
Kernel_version:
2.6.18-308.el5
CPU model:
Intel(R) Xeon(R) CPU E5606 @ 2.13GHz
Total of physical CPU:
2
Number of CPU cores
4
Number of logical CPUs:
8
Present Mode Of CPU:
64
Support Mode Of CPU:
64
Total Memory:
8164216 kB
Maxinum Memory Capacity:
192 GB
Number of Physical Memory:
4
Total Swap:
10223608 kB
Buffers:
212544 kB
Cached:
2622720 kB
Available Memory:
6875 MB
Amount Of Disks:
Disk /dev/sda: 146.8 GB
Usage Of partions:
/dev/mapper/VolGroup00-LogVol00 123G 4.2G 113G 4% /
/dev/sda1 99M 13M 81M 14% /boot
tmpfs 3.9G 0 3.9G 0% /dev/shm
- shell脚本获取系统相关信息
- linux系统获取基础硬件信息的shell脚本
- Openwrt系统中shell脚本获取配置文件信息解读
- 获取系统相关信息
- 获取系统的相关信息
- shell脚本之获取终端信息
- 获取CPU信息的shell脚本
- 利用shell脚本批量获取主机信息
- 使用shell脚本获取系统运行状态
- shell获取系统运行状态、软硬件信息
- ASP脚本获取客户端系统信息
- Python脚本获取Linux系统信息
- 工作中编写shell脚本设计到相关信息
- 获取系统进程列表及其相关信息
- iOS获取当前系统的相关信息
- C++获取各种系统相关信息
- 获取系统相关信息的方法
- Linux系统内存相关信息获取
- UNIX 的ftp命令
- ubuntu 编译是出现 error: openssl/rsa.h: No such file or directory
- [总结]FFMPEG视音频编解码零基础学习方法
- java相关环境配置
- 实时监听input值改变
- shell脚本获取系统相关信息
- 调用系统提示音
- 新版一年级上册数学期末试卷
- 完美散列函数(一)
- 二年级语文上册多音字同音字形近字复习练习(北师大版)
- STM32CAN过滤器的作用
- Qt添加右键菜单
- linux下3TB硬盘的分区问题
- Install httpd and mod_ssl on linux