查看Linux硬件的信息shell脚本
2013-07-10 16:09
387 查看
#!/bin/bash
#
# SystemInfo manager
#
#
###Sytem time
timedate(){
echo "**********************************************"
echo "Sytem datetime info:"
echo
echo " System nowtime:"` date +"%F %H:%M:%S"`
echo " System uptimes:"` cat /proc/uptime| awk -F. '{run_days=$1 / 86400;run_hour=($1 % 86400)/3600;run_minute=($1 % 3600)/60;run_second=$1 % 60;printf ("%d day %d hour %d Min %d Sec",run_days,run_hour,run_minute,run_second)}'`
echo
}
###System ip addr
ipaddr(){
echo "**********************************************"
echo "Network adapter info:"
echo
for nets in `ip addr | grep "inet "|grep global|awk '{print $7}'|sort|uniq -u`;
do
echo " IP_$nets : "
for ipaddr in `ip addr | grep "inet "|grep global|grep $nets|awk '{print $2}'`;
do
echo " $ipaddr"
done
duplex_nets=`ethtool $nets | grep Duplex | awk '{if($2~/Full/) print "Full"};{if($2~/Half/)print "Half"};{if($2~/Uknown!/) print "unknown"}'`
Negotiation_nets=`ethtool $nets | grep "Advertised auto-negotiation"|awk -F': ' '{if($2~/No/) print "Non-negotiation."};{if($2~/Yes/) print "Negotiation"}'`
speed_nets=`ethtool $nets|grep Speed|awk '{print $2}'`
echo " Speed_$nets : ${speed_nets}"
echo " Duplex_$nets : ${duplex_nets}"
echo " Negotiation_$nets : ${Negotiation_nets}"
echo
done
}
####System Version
system_info(){
echo "**********************************************"
echo "system info:"
echo
echo "hostname: " `hostname`
echo "System Version:" `cat /etc/issue|head -n 1`
echo "System Bits: " `uname -m`
echo "System kernel:" `uname -r`
echo "System runlevel: " `runlevel`
echo "Server-Model : `dmidecode | grep "Product Name:"|sed -n '1p'|awk -F: '{print $2}'`"
echo
}
####Cpuinfo
cpu_info(){
echo "**********************************************"
echo "CPU info:"
echo
echo " How much cpu: " `more /proc/cpuinfo |grep "physical id"|uniq|wc -l`
echo " A cpu several nuclear: " `more /proc/cpuinfo |grep "physical id"|grep "0"|wc -l`
echo " How nuclear: " `cat /proc/cpuinfo |grep "processor"|wc -l`
echo " Cpu Name: " `cat /proc/cpuinfo |grep "model name"|uniq|awk -F: '{print $2}'`
echo " cpu MHz: " `cat /proc/cpuinfo |grep MHz|uniq|awk -F: '{print $2}'`
echo " Cpu cache size" `cat /proc/cpuinfo |grep "cache size"|uniq|awk -F: '{print $2}'`
echo
}
#memory info
mem_info() {
memory=`dmidecode |grep "Range Size"|head -1|awk '{print $3$4}'`
mem_size=`echo "This server has ${memory} memory."`
echo "**********************************************"
echo "Memory info:"
echo
echo " Total : ${mem_size}"
echo " Count : `dmidecode |grep -A16 "Memory Device$"|grep Size|awk '{if($2!~/No/) print $0}'|wc -l`"
dmidecode |grep -A20 "Memory Device$"|grep Size|sed '{s/^ */ /g};{/No/d}'
echo " `cat /proc/meminfo|grep "MemFree"` "
echo " `cat /proc/meminfo|grep "Buffers"` "
echo " `cat /proc/meminfo|grep "^Cached"` "
echo
echo "Swap info:"
echo " `cat /proc/meminfo|grep "SwapTotal"` "
echo " `cat /proc/meminfo|grep "SwapFree"` "
echo
}
#disk and partitions
swap_pos=`cat /proc/swaps|sed -n '2p'|awk '{print $1}'`
partition_info() {
echo "**********************************************"
echo "Hard disk info:"
echo
echo "`fdisk -l|grep Disk|awk -F, '{print $1}'`"
echo "**********************************************"
echo "Partition info:"
echo
df -h | grep -v Filesystem | sed "s:none:${swap_pos}:"
echo
}
timedate
system_info
cpu_info
mem_info
partition_info
ipaddr
#
# SystemInfo manager
#
#
###Sytem time
timedate(){
echo "**********************************************"
echo "Sytem datetime info:"
echo
echo " System nowtime:"` date +"%F %H:%M:%S"`
echo " System uptimes:"` cat /proc/uptime| awk -F. '{run_days=$1 / 86400;run_hour=($1 % 86400)/3600;run_minute=($1 % 3600)/60;run_second=$1 % 60;printf ("%d day %d hour %d Min %d Sec",run_days,run_hour,run_minute,run_second)}'`
echo
}
###System ip addr
ipaddr(){
echo "**********************************************"
echo "Network adapter info:"
echo
for nets in `ip addr | grep "inet "|grep global|awk '{print $7}'|sort|uniq -u`;
do
echo " IP_$nets : "
for ipaddr in `ip addr | grep "inet "|grep global|grep $nets|awk '{print $2}'`;
do
echo " $ipaddr"
done
duplex_nets=`ethtool $nets | grep Duplex | awk '{if($2~/Full/) print "Full"};{if($2~/Half/)print "Half"};{if($2~/Uknown!/) print "unknown"}'`
Negotiation_nets=`ethtool $nets | grep "Advertised auto-negotiation"|awk -F': ' '{if($2~/No/) print "Non-negotiation."};{if($2~/Yes/) print "Negotiation"}'`
speed_nets=`ethtool $nets|grep Speed|awk '{print $2}'`
echo " Speed_$nets : ${speed_nets}"
echo " Duplex_$nets : ${duplex_nets}"
echo " Negotiation_$nets : ${Negotiation_nets}"
echo
done
}
####System Version
system_info(){
echo "**********************************************"
echo "system info:"
echo
echo "hostname: " `hostname`
echo "System Version:" `cat /etc/issue|head -n 1`
echo "System Bits: " `uname -m`
echo "System kernel:" `uname -r`
echo "System runlevel: " `runlevel`
echo "Server-Model : `dmidecode | grep "Product Name:"|sed -n '1p'|awk -F: '{print $2}'`"
echo
}
####Cpuinfo
cpu_info(){
echo "**********************************************"
echo "CPU info:"
echo
echo " How much cpu: " `more /proc/cpuinfo |grep "physical id"|uniq|wc -l`
echo " A cpu several nuclear: " `more /proc/cpuinfo |grep "physical id"|grep "0"|wc -l`
echo " How nuclear: " `cat /proc/cpuinfo |grep "processor"|wc -l`
echo " Cpu Name: " `cat /proc/cpuinfo |grep "model name"|uniq|awk -F: '{print $2}'`
echo " cpu MHz: " `cat /proc/cpuinfo |grep MHz|uniq|awk -F: '{print $2}'`
echo " Cpu cache size" `cat /proc/cpuinfo |grep "cache size"|uniq|awk -F: '{print $2}'`
echo
}
#memory info
mem_info() {
memory=`dmidecode |grep "Range Size"|head -1|awk '{print $3$4}'`
mem_size=`echo "This server has ${memory} memory."`
echo "**********************************************"
echo "Memory info:"
echo
echo " Total : ${mem_size}"
echo " Count : `dmidecode |grep -A16 "Memory Device$"|grep Size|awk '{if($2!~/No/) print $0}'|wc -l`"
dmidecode |grep -A20 "Memory Device$"|grep Size|sed '{s/^ */ /g};{/No/d}'
echo " `cat /proc/meminfo|grep "MemFree"` "
echo " `cat /proc/meminfo|grep "Buffers"` "
echo " `cat /proc/meminfo|grep "^Cached"` "
echo
echo "Swap info:"
echo " `cat /proc/meminfo|grep "SwapTotal"` "
echo " `cat /proc/meminfo|grep "SwapFree"` "
echo
}
#disk and partitions
swap_pos=`cat /proc/swaps|sed -n '2p'|awk '{print $1}'`
partition_info() {
echo "**********************************************"
echo "Hard disk info:"
echo
echo "`fdisk -l|grep Disk|awk -F, '{print $1}'`"
echo "**********************************************"
echo "Partition info:"
echo
df -h | grep -v Filesystem | sed "s:none:${swap_pos}:"
echo
}
timedate
system_info
cpu_info
mem_info
partition_info
ipaddr
相关文章推荐
- 利用shell脚本“综合、集中”查看linux server常用软硬件信息 推荐
- 利用shell脚本“综合、集中”查看linux server常用软硬件信息
- shell脚本实现Linux ip的配置(增删改查)以及相关信息查看
- Java 连接远程Linux 服务器执行 shell 脚本查看 CPU、内存、硬盘信息
- 【信息采集】IBM AIX系统硬件信息查看命令(shell脚本)
- shell写的检测linux系统硬件信息的脚本
- IBM AIX系统硬件信息查看命令(shell脚本)
- 查看linux硬件信息脚本
- IBM AIX系统硬件信息查看命令(shell脚本)
- python脚本查看linux硬件信息
- 查看linux服务器硬件信息的perl脚本
- Linux查看磁盘信息(编写shell脚本来分析文件的占用情况)
- Java 连接远程Linux 服务器执行 shell 脚本查看 CPU、内存、硬盘信息
- linux硬件信息查看脚本
- Linux查看硬件信息(北桥芯片组、南桥、PCI接口、CPU等)
- 转:Linux查看CPU信息、机器型号等硬件信
- Linux查看CPU等硬件信息
- Linux 查看CPU信息、机器型号等硬件信息
- Linux查看硬件所有信息
- Linux查看CPU信息、机器型号等硬件信息