Welcome to the Linux Foundation Forum!

Urgent Linux scripting help

i wrote a script in Linux Kate

this script is to show all system information avalible on the computer in a menu form but when pressed option 1 to show jus the hard drive information it shows all of the information avalible

and i got a backup code which is not paste in the below script which does not work any1 know a easy backup script jus for system files

any1 could help

#!/bin/bash

while :

do

echo "1.Output System specifications"

echo "2.Display Virtual memory statistics"

echo "3.Display memory usage"

echo "4.Estimate file space usage"

echo "5.Display free disk space"

echo "6.Backup files"

echo "7.EXIT"

echo -n "Enter a number between 1 and 7 and press [ENTER];"

read opt

case $opt in

1) uname ;;

2) vmstat ;;

3) free ;;

4) du ;;

5) df ;;

#6)

7) echo "Bye $USER";

exit 1;;

esac

sleep 2

clear

# harddisk information

if [ -d /proc/ide/hda ]

then

echo -e "Hard disk information:"

echo -e "--------------------------------------------------------------------"

echo -e "Model: `cat /proc/ide/hda/model` "

echo -e "Driver: `cat /proc/ide/hda/driver` "

echo -e "Cache size: `cat /proc/ide/hda/cache` "

fi

echo -e "--------------------------------------------------------------------"

echo -e "Computer CPU Information:"

echo -e "--------------------------------------------------------------------"

cat /proc/cpuinfo

echo -e "--------------------------------------------------------------------"

echo -e "Computer Memory Information:"

echo -e "--------------------------------------------------------------------"

cat /proc/meminfo

echo -e "--------------------------------------------------------------------"

echo -e "File System (Mount):"

echo -e "--------------------------------------------------------------------"

cat /proc/mounts

done

Comments

  • mfillpot
    mfillpot Posts: 2,177
    I got creative, here you go all you need to do it call the functions for the additional operations.
    #!/bin/bash
    
    function SystemSpecs {
      uname -a
    }
    
    function VmStats {
      vmstat
    }
    
    function MemStats {
      free
    }
    
    function FileSpace {
      du
    }
    
    function FreeSpace {
      df
    }
    
    function BackupSystem {
      echo Backup Started `date` >> ~/backuplog
      mkdir /mnt/usbdrive/backups/`date +%Y%m%d`
      tar -czf /mnt/usbdrive/backups/`date +%Y%m%d`/data.tar.gz /data
      echo Backup Completed `date` >> ~/backuplog
    }
    
    function ExitMessage {
      echo "Bye $USER"
    }
    
    function HdInfo {
      if [ -d /proc/ide/hda ]
      then
        echo -e "Hard disk information:"
        echo -e "--------------------------------------------------------------------"
        echo -e "Model: `cat /proc/ide/hda/model` "
        echo -e "Driver: `cat /proc/ide/hda/driver` "
        echo -e "Cache size: `cat /proc/ide/hda/cache` "
      fi
    }
    
    function CpuInfo {
      echo -e "--------------------------------------------------------------------"
      echo -e "Computer CPU Information:"
      echo -e "--------------------------------------------------------------------"
      cat /proc/cpuinfo
    }
    
    function CMemInfo {
      echo -e "--------------------------------------------------------------------"
      echo -e "Computer Memory Information:"
      echo -e "--------------------------------------------------------------------"
      cat /proc/meminfo
    }
    
    function FsInfo {
      echo -e "--------------------------------------------------------------------"
      echo -e "File System (Mount):"
      echo -e "--------------------------------------------------------------------"
      cat /proc/mounts
    }
    
    while :
    do
    
      clear
      printf "|-------------------------------------------------------------|\n"
      printf "|       Choose which system information you need              |\n"
      printf "|-------------------------------------------------------------|\n"
      printf "\n"
      printf "1. Output System specifications\n"
      printf "2. Display Virtual memory statistics\n"
      printf "3. Display memory usage\n"
      printf "4. Estimate file space usage\n"
      printf "5. Display free disk space\n"
      printf "6. Backup files\n"
      printf "7. EXIT\n"
      printf "\n"
      printf "Enter a number between 1 and 7 and press [ENTER]: "
      read opt
      printf "\n"
    
    
      case "$opt" in
      1) 
          SystemSpecs
          ;;
      2) 
          VmStats
          ;;
      3) 
          MemStats
          ;;
      4) 
          FileSpace
          ;;
      5) 
          FreeSpace
          ;;
      6)
          BackupSystem
          ;;
      7) 
          ExitMessage
          exit 1
          ;;
      else)
        sleep 2
        clear
        ;;
      esac
    
      clear
    done
    

Categories

Upcoming Training