当前位置: 首页 > ai >正文

linux登陆硬件检测脚本

 即拿即用,各种文本各种较为难懂的字段,已注解

#!/bin/bash
#作者:pei,创作时间:2025,05,29
#欢迎登录Linux脚本检测系统硬件参数# 获取系统信息
OS_INFO=$(lsb_release -ds 2>/dev/null || cat /etc/*release 2>/dev/null | head -n1)
# "Linux标准基础信息" #2>/dev/null(将错误输出改为空),cat /etc/*release 2>/dev/null(读取发行版本信息将错误输出改为空) 
KERNEL=$(uname -r)
# "查询Linux内核版本" 
UPTIME=$(uptime -p)
# "查询系统运行时间" 
LAST_BOOT=$(who -b | awk '{print $3,$4}')
# "查询系统最后一次登录时间" # 获取CPU信息
CPU_MODEL=$(lscpu | grep 'Model name' | cut -d':' -f2 | sed 's/^ *//')
# "显示 CPU 架构信息" #sed 's/^ *//'(将行首的空格删除) 
CPU_CORES=$(lscpu | grep '^CPU(s):' | awk '{print $2}')
# "查询 CPU 核心数量" #筛选以CPU开头的字段 
CPU_THREADS=$(lscpu | grep 'Thread(s) per core' | awk '{print $4}')
# "查询每个核心的线程数" #筛选字段关于线程数的英文 
CPU_USAGE=$(top -bn1 | awk -F, '/Cpu/{print $4}' | awk '{print 100 - $1"%"}')
# "查询当前 CPU 使用率百分比" #$1(空闲比) #-F,:设置字段分隔符为逗号(,)处理前一步的输出 99.1 id 默认按空格分隔字段: $1 = 99.1(第一个字段)$2 = id(第二个字段)100 - $1:计算使用率(100 - 空闲率)"%":添加百分号 最终输出:0.9%# 获取内存信息
MEM_TOTAL=$(free -h | awk '/Mem:/ {print $2}')
# "men的总计为:" 
MEM_USED=$(free -h | awk '/Mem:/ {print $3}')
# "men的空闲空间为:" 
MEM_FREE=$(free -h | awk '/Mem:/ {print $4}')
# "men使用共享所占用的·空间为" 
MEM_AVAIL=$(free -h | awk '/Mem:/ {print $7}')
# "men可用空间为:" 
SWAP_TOTAL=$(free -h | awk '/Swap:/ {print $2}')
# "swap的总计空间为:" # 获取磁盘信息
DISK_ROOT=$(df -h / | awk 'NR==2 {print $4}')
# "根分区 (/) 的可用磁盘空间(剩余空间)为:"   #NR==2只处理第二行(跳过标题行)
DISK_HOME=$(df -h ~ | awk 'NR==2 {print $4}')
# "当前用户家目录所在分区的可用磁盘空间(剩余空间):" # 获取网络信息
PUBLIC_IP=$(curl -s ifconfig.me)
LOCAL_IP=$(hostname -I | awk '{print $1}')
GATEWAY=$(ip route | grep default | awk '{print $3}')
#"获取设备的公网、本地、网关为:"; 
# 获取GPU信息(NVIDIA专用)
GPU_INFO=$(nvidia-smi --query-gpu=gpu_name --format=csv,noheader 2>/dev/null || echo "Not Available")# 显示欢迎信息
echo -e "\n\033[1;34m===== 系统登录信息 [$(date)] =====\033[0m"
echo -e "\033[1;32m用户:\033[0m     $(whoami)"
echo -e "\033[1;32m主机名:\033[0m   $(hostname)"
echo -e "\033[1;32m系统:\033[0m     $OS_INFO"
echo -e "\033[1;32m内核:\033[0m     $KERNEL"
echo -e "\033[1;32m运行时间:\033[0m $UPTIME (上次启动: $LAST_BOOT)"# 显示硬件信息
echo -e "\n\033[1;34m===== 硬件参数 =====\033[0m"
echo -e "\033[1;33mCPU:\033[0m $CPU_MODEL"
echo -e "  |- 核心: $CPU_CORES 线程: $CPU_THREADS 使用率: $CPU_USAGE"
echo -e "\033[1;33m内存:\033[0m 总量: $MEM_TOTAL | 已用: $MEM_USED | 空闲: $MEM_FREE | 可用: $MEM_AVAIL"
echo -e "\033[1;33m交换:\033[0m $SWAP_TOTAL"
echo -e "\033[1;33m磁盘:\033[0m 根分区剩余: $DISK_ROOT | 家目录剩余: $DISK_HOME"
echo -e "\033[1;33m网络:\033[0m 公网IP: $PUBLIC_IP | 内网IP: $LOCAL_IP | 网关: $GATEWAY"
echo -e "\033[1;33mGPU:\033[0m  ${GPU_INFO}"# 安全提示
echo -e "\n\033[1;31m安全提醒:\033[0m"
echo "上次登录记录:"
last -2 $(whoami) | head -n 2 | grep -v "still"echo -e "\n\033[1;35m系统负载:\033[0m $(uptime | awk -F'[a-z]:' '{print $2}')\n"
#\033 是 ESC 字符的八进制表示(ASCII 27)[ 是固定的开始符号 <代码> 是控制文本样式的数字代码 m 是固定的结束符号

http://www.xdnf.cn/news/11459.html

相关文章:

  • 菜鸟小技巧:如何在网上隐藏自己的IP地址(1)
  • 业务知识记录
  • Ipmsg
  • 博文收藏
  • linux输入ls乱码,xshell连接CentOS6.5 iptables或ls 输出乱码
  • 教你如何下载在线视频
  • 免费收录网站搜索引擎登录口
  • 专业除甲醛公司真的有用吗 专业除甲醛公司怎么除甲醛
  • 2021面试题
  • CAD迷你看图 for Mac(强大的cad看图软件)v4.4.5免激活版
  • 【总结】1111- 如何搞定Banner背景自动换色的功能?
  • 乐趣无限:10款基于Pygame的经典游戏合集
  • 外呼系统:实现精准营销的关键
  • com 组件调用不起来_Spring Cloud Alibaba,分布式服务调用(四)
  • 银行数据分析进阶篇:银行业零售贷款营销与风控平衡分析
  • JavaSE入门:初识java
  • 八款最优秀的免费翻译相关软件推荐
  • 3.3 matlab用switch语句实现选择结构
  • sql基本语句和关键字
  • 【OushuDB】Oushu Database 简介
  • VMware+CentOS7搭建私有云桌面服务
  • 推荐4款功能强悍的软件,好用到你无可挑剔,快收藏起来偷偷使用
  • 惩罚女人的最有效方法!
  • Android手机上使用Socks5全局代理-教程+软件
  • 如何登陆java版的微信_Java对接微信登录
  • 深度解析自动化测试流程(纯干货)
  • 同步推正版授权的原理
  • UI设计案例,B端后台界面设计教程
  • 韩寒等50名作家3.15联袂声讨百度侵权
  • Swift—Cocoa Touch设计模式-备