Programming Tutorials

Getting System Information in Shell Script

By: Vivek G in Linux Tutorials on 2011-01-29  

This shell script shows how to get system information in a script in linux. This sample program shows various system configuration like
1) Currently logged user and his logname
2) Your current shell
3) Your home directory
4) Your operating system type
5) Your current path setting
6) Your current working directory
7) Show Currently logged number of users
8) About your os and version ,release number , kernel version
9) Show all available shells
10) Show mouse settings
11) Show computer cpu information like processor type, speed etc
12) Show memory information
13) Show hard disk information like size of hard-disk, cache memory, model etc
14) File system (Mounted)
 
nouser=`who | wc -l`
echo -e "User name: $USER (Login name: $LOGNAME)" >> /tmp/info.tmp.01.$$$
echo -e "Current Shell: $SHELL"  >> /tmp/info.tmp.01.$$$
echo -e "Home Directory: $HOME" >> /tmp/info.tmp.01.$$$
echo -e "Your O/s Type: $OSTYPE" >> /tmp/info.tmp.01.$$$
echo -e "PATH: $PATH" >> /tmp/info.tmp.01.$$$
echo -e "Current directory: `pwd`" >> /tmp/info.tmp.01.$$$
echo -e "Currently Logged: $nouser user(s)" >> /tmp/info.tmp.01.$$$

if [ -f /etc/redhat-release ]
then
    echo -e "OS: `cat /etc/redhat-release`" >> /tmp/info.tmp.01.$$$
fi

if [ -f /etc/shells ]
then
    echo -e "Available Shells: " >> /tmp/info.tmp.01.$$$
    echo -e "`cat /etc/shells`"  >> /tmp/info.tmp.01.$$$
fi
    
if [ -f /etc/sysconfig/mouse ]
then
    echo -e "--------------------------------------------------------------------" >> /tmp/info.tmp.01.$$$ 
    echo -e "Computer Mouse Information: " >> /tmp/info.tmp.01.$$$
    echo -e "--------------------------------------------------------------------" >> /tmp/info.tmp.01.$$$ 
    echo -e "`cat /etc/sysconfig/mouse`" >> /tmp/info.tmp.01.$$$ 
fi
echo -e "--------------------------------------------------------------------" >> /tmp/info.tmp.01.$$$ 
echo -e "Computer CPU Information:" >> /tmp/info.tmp.01.$$$ 
echo -e "--------------------------------------------------------------------" >> /tmp/info.tmp.01.$$$ 
cat /proc/cpuinfo >> /tmp/info.tmp.01.$$$

echo -e "--------------------------------------------------------------------" >> /tmp/info.tmp.01.$$$ 
echo -e "Computer Memory Information:" >> /tmp/info.tmp.01.$$$ 
echo -e "--------------------------------------------------------------------" >> /tmp/info.tmp.01.$$$ 
cat /proc/meminfo >> /tmp/info.tmp.01.$$$

if [ -d /proc/ide/hda ]
then
    echo -e "--------------------------------------------------------------------" >> /tmp/info.tmp.01.$$$ 
    echo -e "Hard disk information:" >> /tmp/info.tmp.01.$$$ 
    echo -e "--------------------------------------------------------------------" >> /tmp/info.tmp.01.$$$ 
    echo -e "Model: `cat /proc/ide/hda/model` " >> /tmp/info.tmp.01.$$$    
    echo -e "Driver: `cat /proc/ide/hda/driver` " >> /tmp/info.tmp.01.$$$    
    echo -e "Cache size: `cat /proc/ide/hda/cache` " >> /tmp/info.tmp.01.$$$    
fi
echo -e "--------------------------------------------------------------------" >> /tmp/info.tmp.01.$$$ 
echo -e "File System (Mount):" >> /tmp/info.tmp.01.$$$ 
echo -e "--------------------------------------------------------------------" >> /tmp/info.tmp.01.$$$ 
cat /proc/mounts >> /tmp/info.tmp.01.$$$

if which dialog > /dev/null
then
    dialog  --backtitle "Linux Software Diagnostics (LSD) Shell Script Ver.1.0" --title "Press Up/Down Keys to move" --textbox  /tmp/info.tmp.01.$$$ 21 70
else
    cat /tmp/info.tmp.01.$$$ |more
fi

rm -f /tmp/info.tmp.01.$$$






Add Comment

* Required information
1000

Comments

No comments yet. Be the first!

Most Viewed Articles (in Linux )

Latest Articles (in Linux)