Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # A menu driven shell script sample template
- ## ----------------------------------
- # Step #1: Define variables
- # ----------------------------------
- EDITOR=vim
- PASSWD=/etc/passwd
- RED='\033[0;41;30m'
- STD='\033[0;0;39m'
- # ----------------------------------
- # Step #2: User defined function
- # ----------------------------------
- pause(){
- read -p "Press [Enter] key to continue..." fackEnterKey
- }
- one(){
- echo "one() called"
- pause
- }
- # do something in two()
- two(){
- echo "two() called"
- pause
- }
- # function to display menus
- show_menus() {
- clear
- echo "~~~~~~~~~~~~~~~~~~~~~"
- echo " M A I N - M E N U"
- echo "~~~~~~~~~~~~~~~~~~~~~"
- echo "1. Get user data "
- echo "2. Copy everything in a directory "
- echo "3. "
- echo "4. Create new account"
- echo "5. Change ownership of all files of previous owner"
- echo "6. Block account"
- echo "7. Check for proccesses of an account"
- echo "8. Check if there are active processes and stop them"
- echo " "
- echo "0. Exit"
- }
- # read input from the keyboard and take a action
- # invoke the one() when the user select 1 from the menu option.
- # invoke the two() when the user select 2 from the menu option.
- # Exit when user the user select 3 form the menu option.
- read_options(){
- local choice
- read -p "Enter choice [ 1 - 3] " choice
- case $choice in
- 1) one ;;
- 2) two ;;
- 3) exit 0;;
- *) echo -e "${RED}Error...${STD}" && sleep 2
- esac
- }
- # ----------------------------------------------
- # Step #3: Trap CTRL+C, CTRL+Z and quit singles
- # ----------------------------------------------
- trap '' SIGINT SIGQUIT SIGTSTP
- # -----------------------------------
- # Step #4: Main logic - infinite loop
- # ------------------------------------
- while true
- do
- show_menus
- read_options
- done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement