Linux如何用腳本查看系統(tǒng)信息?這篇文章運用了實例代碼展示,代碼非常詳細,可供感興趣的小伙伴們參考借鑒,希望對大家有所幫助。
創(chuàng)新互聯(lián)公司專注于企業(yè)成都全網(wǎng)營銷推廣、網(wǎng)站重做改版、虎丘網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5高端網(wǎng)站建設(shè)、商城開發(fā)、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為虎丘等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。#!/bin/bash
# auth:Bertram
# created Time : 2019-12-26
# func:sys info check
# sys:centos6.x/7.x
-------------------------------------------------------------------------------------------------------------------------------------
[ $(id -u) -ne 0 ] && echo "請用root用戶執(zhí)行此腳本!" && exit 1
sysversion=$(rpm -q centos-release|cut -d- -f3)
line="-------------------------------------------------"
[ -d logs ] || mkdir logs
#sys_check_file="logs/$(ip a show dev eth0|grep -w inet|awk '{print $2}'|awk -F '/' '{print $1}')-`date +%Y%m%d`.txt"
sys_check_file="logs/$(ifconfig |awk 'NR==2{print $2}')-`date +%Y%m%d`.txt"
# 獲取系統(tǒng)cpu信息
function get_cpu_info() {
Physical_CPUs=$(grep "physical id" /proc/cpuinfo| sort | uniq | wc -l)
Virt_CPUs=$(grep "processor" /proc/cpuinfo | wc -l)
CPU_Kernels=$(grep "cores" /proc/cpuinfo|uniq| awk -F ': ' '{print $2}')
CPU_Type=$(grep "model name" /proc/cpuinfo | awk -F ': ' '{print $2}' | sort | uniq)
CPU_Arch=$(uname -m)
#echo -e '\033[32m CPU信息:\033[0m'
echo -e '\033[05;32m CPU信息:\033[0m'
cat <<EOF | column -t
物理CPU個數(shù): $Physical_CPUs
邏輯CPU個數(shù): $Virt_CPUs
每CPU核心數(shù): $CPU_Kernels
CPU型號: $CPU_Type
CPU架構(gòu): $CPU_Arch
EOF
}
# 獲取系統(tǒng)內(nèi)存信息
function get_mem_info() {
Total=$(free -m | sed -n '2p' | awk '{print $2"M"}')
Used=$(free -m | sed -n '2p' | awk '{print $3"M"}')
Rate=$(free -m | sed -n '2p' | awk '{print""($3/$2)*100"%"}')
echo -e '\033[05;31m 內(nèi)存信息:\033[0m'
cat <<EOF | column -t
內(nèi)存總?cè)萘浚?Total
內(nèi)存已使用:$Used
內(nèi)存使用率:$Rate
EOF
}
# 獲取系統(tǒng)網(wǎng)絡(luò)信息
function get_net_info() {
pri_ipadd=$(ifconfig |awk 'NR==2{print $2}')
#pub_ipadd=$(curl ip.sb 2>&1)
pub_ipadd=$(curl -s http://ddns.oray.com/checkip | awk -F ":" '{print $2}' | awk -F "<" '{print $1}'|awk '{print $1}')
gateway=$(ip route | grep default | awk '{print $3}')
mac_info=$(ip link| egrep -v "lo"|grep link|awk '{print $2}')
dns_config=$(egrep 'nameserver' /etc/resolv.conf)
route_info=$(route -n)
echo -e '\033[05;33m IP信息:\033[0m'
cat <<EOF | column -t
系統(tǒng)公網(wǎng)地址: ${pub_ipadd}
系統(tǒng)私網(wǎng)地址: ${pri_ipadd}
網(wǎng)關(guān)地址: ${gateway}
MAC地址: ${mac_info}
路由信息:
${route_info}
DNS 信息:
${dns_config}
EOF
}
# 獲取系統(tǒng)磁盤信息
function get_disk_info() {
disk_info=$(fdisk -l|grep "Disk /dev"|cut -d, -f1)
disk_use=$(df -hTP|awk '$2!="tmpfs"{print}')
disk_inode=$(df -hiP|awk '$1!="tmpfs"{print}')
echo -e '\033[05;34m 磁盤信息:\033[0m'
cat <<EOF
${disk_info}
磁盤使用:
${disk_use}
inode信息:
${disk_inode}
EOF
}
# 獲取系統(tǒng)信息
function get_systatus_info() {
sys_os=$(uname -o)
sys_release=$(cat /etc/redhat-release)
sys_kernel=$(uname -r)
sys_hostname=$(hostname)
sys_selinux=$(getenforce)
sys_lang=$(echo $LANG)
sys_lastreboot=$(who -b | awk '{print $3,$4}')
sys_runtime=$(uptime |awk '{print $3,$4}'|cut -d, -f1)
sys_time=$(date)
sys_load=$(uptime |cut -d: -f5)
echo -e '\033[05;35m 系統(tǒng)信息:\033[0m'
cat <<EOF | column -t
系統(tǒng): ${sys_os}
發(fā)行版本: ${sys_release}
系統(tǒng)內(nèi)核: ${sys_kernel}
主機名: ${sys_hostname}
selinux狀態(tài): ${sys_selinux}
系統(tǒng)語言: ${sys_lang}
系統(tǒng)當前時間: ${sys_time}
系統(tǒng)最后重啟時間: ${sys_lastreboot}
系統(tǒng)運行時間: ${sys_runtime}
系統(tǒng)負載: ${sys_load}
EOF
}
# 獲取服務(wù)信息
function get_service_info() {
port_listen=$(netstat -lntup|grep -v "Active Internet")
kernel_config=$(sysctl -p 2>/dev/null)
if [ ${sysversion} -gt 6 ];then
service_config=$(systemctl list-unit-files --type=service --state=enabled|grep "enabled")
run_service=$(systemctl list-units --type=service --state=running |grep ".service")
else
service_config=$(/sbin/chkconfig | grep -E ":on|:啟用" |column -t)
run_service=$(/sbin/service --status-all|grep -E "running")
fi
echo -e '\033[05;36m 服務(wù)啟動配置:\033[0m'
cat <<EOF
${service_config}
${line}
運行的服務(wù):
${run_service}
${line}
監(jiān)聽端口:
${port_listen}
${line}
內(nèi)核參考配置:
${kernel_config}
EOF
}
function get_sys_user() {
login_user=$(awk -F: '{if ($NF=="/bin/bash") print $0}' /etc/passwd)
ssh_config=$(egrep -v "^#|^$" /etc/ssh/sshd_config)
sudo_config=$(egrep -v "^#|^$" /etc/sudoers |grep -v "^Defaults")
host_config=$(egrep -v "^#|^$" /etc/hosts)
crond_config=$(for cronuser in /var/spool/cron/* ;do ls ${cronuser} 2>/dev/null|cut -d/ -f5;egrep -v "^$|^#" ${cronuser} 2>/dev/null;echo "";done)
echo -e '\033[05;37m 系統(tǒng)登錄用戶:\033[0m'
cat <<EOF
${login_user}
${line}
ssh 配置信息:
${ssh_config}
${line}
sudo 配置用戶:
${sudo_config}
${line}
定時任務(wù)配置:
${crond_config}
${line}
hosts 信息:
${host_config}
EOF
}
function process_top_info() {
top_title=$(top -b n1|head -7|tail -1)
cpu_top10=$(top b -n1 | head -17 | tail -10)
mem_top10=$(top -b n1|head -17|tail -10|sort -k10 -r)
echo -e '\033[05;38m CPU占用top10:\033[0m'
cat <<EOF
${top_title}
${cpu_top10}
EOF
echo -e '\033[05;39m 內(nèi)存占用top10:\033[0m'
cat <<EOF
${top_title}
${mem_top10}
EOF
}
function sys_check() {
get_cpu_info
echo ${line}
get_mem_info
echo ${line}
get_net_info
echo ${line}
get_disk_info
echo ${line}
get_systatus_info
echo ${line}
get_service_info
echo ${line}
get_sys_user
echo ${line}
process_top_info
}
sys_check > ${sys_check_file}
結(jié)果如圖 :
關(guān)于用腳本查看Linux系統(tǒng)信息的腳本就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
新聞名稱:Linux如何用腳本查看系統(tǒng)信息-創(chuàng)新互聯(lián)
網(wǎng)頁網(wǎng)址:http://www.rwnh.cn/article26/dochcg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、商城網(wǎng)站、網(wǎng)站收錄、網(wǎng)站策劃、定制開發(fā)、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)