利用dialog用shell查看系统信息
#!/bin/bash # system info shell exec 2>/dev/null tempfile1=$(mktemp -t file.XXXXXX) function cpuinfo() { cat /proc/cpuinfo &>$tempfile1 dialog --textbox $tempfile1 40 80 } function meminfo() { cat /proc/meminfo &>$tempfile1 dialog --textbox $tempfile1 40 80 } function vgainfo() { lspci | grep -i 'VGA' &>$tempfile1 dialog --textbox $tempfile1 40 80 } function ifconfiginfo() { ifconfig &>$tempfile1 dialog --textbox $tempfile1 40 80 } function xuliehao() { cat /sys/class/dmi/id/product_* &>$tempfile1 dialog --textbox $tempfile1 40 80 } function biosinfo() { cat /sys/class/dmi/id/bios_* &>$tempfile1 dialog --textbox $tempfile1 40 80 } function filesystem() { cat /proc/filesystems &>$tempfile1 dialog --textbox $tempfile1 40 80 } function version() { cat /proc/version &>$tempfile1 dialog --textbox $tempfile1 40 220 } function ioport() { cat /proc/ioports &>$tempfile1 dialog --textbox $tempfile1 40 80 } tempfile2=$(mktemp -t file.XXXXXX) while [ 1 ]; do dialog --menu "System info" 20 30 10 1 "cpu info" 2 "memory info" 3 "network crad info" 4 "Graphics card info" 5 "erial number" 6 "bios info" 7 "file systems" 8 "version info" 9 "io ports info" 10 "exit" 2>$tempfile2 outputinfo=$(cat $tempfile2) #if [ -z $outputinfo ] #then # exit #fi case $outputinfo in 1) cpuinfo ;; #continue ;; 2) meminfo ;; 3) ifconfiginfo ;; 4) vgainfo ;; 5) xuliehao ;; 6) biosinfo ;; 7) filesystem ;; 8) version ;; 9) ioport ;; 10) break ;; *) break ;; esac done rm -rf $tempfile1 $tempfile2
萌新,请大佬多多指教,谢谢。

浙公网安备 33010602011771号