Shell Script de Hardware

Imagen de davidcm86
0 puntos

Buenas.
Estoy haciendo un pequeño y humilde script que recoge la información del sistema, de momento es muy básico y no creo que sirva para todas las distribuciones Linux. Lo que voy a poner funciona para Ubuntu 10. Lo que pretendo es que a aquellos que les pueda interesar aporten ideas o que modifiquen el código a su gusto para que poco a poco sea un shell considerable. Es obvio que hay aplicaciones gráficas, pero a quien le guste los script le gustará ésto.
Si no queréis aportar código,bien, pero estaría muy bien que actuaráis un poco de debugger, es decir, ejecutando el script y diciendo si os sale bien la información.

Aquí dejo la tonteria:

Lo he mejorado un poquito a 27 de julio

#!/bin/bash

echo "Para ver la información de su sistema pulse ..........................1"
echo "Para ver la información de su sistema y meterla en un archivo pulse ..2"

read opc

sistema ()
{
echo " ESTA ES LA INFORMACIÓN REFERENTE A SU SISTEMA"
echo ""
echo "Máquina: `hostname`"
echo "Usuario: `whoami`"

#Con uname -s vemos el nombre de Linux. Con el cat vemos la versión del ubuntu, y con el uname -m la arquitectura del SO
echo "Sistema Operativo: `uname -s` `cat /etc/issue | cut -d" " -f1-3` `uname -m`"
echo "Versión del KERNEL: `uname -r`"

#El primer cat nos muestra nuestro tipo de micro, y el comando uniq lo que hace es quitarnos otra línea identica que nos saca el grep. El siguiente cat nos s#aca los GHz, y le siguiente nos dice si el micro es de 32 o 64 bits
echo "MicroProcesador:`cat /proc/cpuinfo | grep "model name"| uniq | cut -d" " -f3-6``cat /proc/cpuinfo | grep "model name"| uniq | cut -d" " -f13-14` de`cat /proc/cpuinfo | grep "clflush size" | uniq | cut -d":" -f2` bits"
echo "Memoria RAM: Total-> `free -om | grep Mem: | cut -d" " -f11` MB"

#Se hace una condición para saber si es SATA=sd o ATA=hd
if test `df -h | grep /dev/hd | cut -d" " -f14` ; then echo "Espacio total en Disco Duro Linux: `df -h | grep /dev/sd | cut -d" " -f14`" ; else echo "Espacio total en Disco Duro Linux: `df -h | grep /dev/sd | cut -d" " -f14`" ; fi

#Lo mismo que el anterior
if test `df -h | grep /dev/hd | cut -d" " -f17` ; then echo "Espacio usado en Disco Duro Linux: `df -h | grep /dev/sd | cut -d" " -f17`" ; else echo "Espacio usado en Disco Duro Linux: `df -h | grep /dev/sd | cut -d" " -f17`" ; fi

#Más de lo mismo
if test `df -h | grep /dev/hd | cut -d" " -f20` ; then echo "Espacio libre en Disco Duro: `df -h | grep /dev/sd | cut -d" " -f20`" ; else echo "Espacio libre en Disco Duro Linux: `df -h | grep /dev/sd | cut -d" " -f20`" ; fi

#lscpi viene por defecto??
echo "Tarjeta Gráfica: `lspci | grep VGA | cut -d":" -f3`"
}

if [ $opc -eq 1 ];then
sistema
elif [ $opc -eq 2 ];then
echo "Escriba como va a nombrar al fichero"
read nombreFic
sistema >> $nombreFic
echo "Su fichero se encuentra en `pwd`"
else [ $opc -ne 1 -a $opc -ne 2 ]
echo "Ha escrito una opción incorrecta"
fi

Imagen de LyingB
+1
0
-1

A primera vista se ve interesante, las órdenes muestran algunas cosas sencillas pero que son útiles; mi primera sugerencia es que los comentarios y el script en general los escribas en inglés, para que sea más fácil de comprender a la comunidad en general.

Por otro lado, hay que mencionar que aplicaciones como Hardinfo hacen esta tarea, así que no termino de entender el porqué de que hayas querido iniciar este script.

+1
0
-1


Agrega al final del título del post (solucionado) si has arreglado tu problema.

Imagen de davidcm86
+1
0
-1

Ya te digo como dije en el post que es simple curiosidad lo del script, el hacerlo con código uno mismo pues te ayuda a rodarte un poco que es lo que me hace falta, y nada pues lo comparto para quien quiere aportar o probar simplemente ;)

+1
0
-1