Linux脚本练习之script026-显示当前主机系统信息,包括主机名,IPv4 地址,操作系统版本,内核版本,CPU 型号,内存大小,硬盘大小。
Posted 二木成林
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux脚本练习之script026-显示当前主机系统信息,包括主机名,IPv4 地址,操作系统版本,内核版本,CPU 型号,内存大小,硬盘大小。相关的知识,希望对你有一定的参考价值。
script026
题目
编写脚本 /root/bin/systeminfo.sh
,显示当前主机系统信息,包括主机名,IPv4 地址,操作系统版本,内核版本,CPU 型号,内存大小,硬盘大小。
分析
本题考查的知识点:
hostname
命令ifconfig
命令grep
命令head
命令awk
命令uname
命令lscpu
命令free
命令lsblk
命令cut
命令sed
命令
思路:
hostname
命令显示的是就是主机名。
ifconfig
命令显示的就是网络网络信息,但需要提取。
/etc/redhat-release
文件记录了红帽 CentOS 发行版的版本信息。
uname
命令可以查看 Linux 系统内核信息。
lscpu
可以查看 CPU 信息。
free
命令可以查看内存使用情况。
lsblk
命令可以查看硬盘信息。
脚本
#!/bin/bash
####################################
#
# 功能:显示当前主机系统信息,包括主机名,IPv4 地址,操作系统版本,内核版本,CPU 型号,内存大小,硬盘大小。
#
# 使用:不需要任何参数,直接执行
#
####################################
# 获取主机名
hostname=$(hostname)
# 获取 IPv4 地址
ipv4_address=$(ifconfig | grep "inet" | head -n 1 | awk 'print $2')
# 获取操作系统版本,下面的命令只能获取红帽CentOS发行版的版本信息
os_version=$(cat /etc/redhat-release)
# 获取内核版本
kernel_version=$(uname -sr)
# 获取 CPU 型号
cpu_version=$(lscpu | grep "^Model name:" | cut -d ":" -f 2 | sed 's/^ *//')
# 获取内存大小
memory_size=$(free | grep "Mem:" | awk 'print $2')
# 获取硬盘大小
hard_disk_size=$(lsblk -l | grep "disk" | awk 'print $4')
# 打印结果
echo -e "主机名:\\t$hostname"
echo -e "IPv4地址:\\t$ipv4_address"
echo -e "操作系统版本:\\t$os_version"
echo -e "内核版本:\\t$kernel_version"
echo -e "CPU型号:\\t$cpu_version"
echo -e "内存大小:\\t$memory_size"
echo -e "硬盘大小:\\t$hard_disk_size"
测试
执行 ./script026.sh
调用脚本。
以上是关于Linux脚本练习之script026-显示当前主机系统信息,包括主机名,IPv4 地址,操作系统版本,内核版本,CPU 型号,内存大小,硬盘大小。的主要内容,如果未能解决你的问题,请参考以下文章
Linux脚本练习之script041-创建目录 `/tmp/scripts`,切换工作目录至此目录中,复制 `/etc/pam.d` 目录至当前目录,并重命名为 `test`。
Linux脚本练习之script005-从键盘读入 10 个数,显示最大值和最小值。
Linux脚本练习之script013-判断当前用户对指定参数文件,是否不可读并且不可写。
Linux脚本练习之script024-判断用户输入文件路径,显示其文件类型(普通,目录,链接,其它文件类型)。
Linux脚本练习之script032-任意用户登录系统时,显示红色字体的警示提醒信息 `Hi, dangerous!`。