|
Title: Simple Menu for User Input Post by: Mark David on March 16, 2007, 12:54:16 PM Simple Menu for User Input
This script will create an input screen in BASH that allows the user to enter information just as they would in a window. This is to show the use of simple functions as well as the tput command. "tput cup" allows the developer to place the cursor anywhere on the screen. There are many more commands that tput recognizes, see the man page for more information. Code: #!/bin/bash ## Clears the screen and builds the user input screen function screen() { clear cat <<EOF #################################################################### ## Main Screen for Input ## #################################################################### ## ## ## User Name: _________________________________________ ## ## Directory: _________________________________________ ## ## Group: _________________________________________ ## ## ## #################################################################### ## Preferences ## Other Info ## #################################################################### ## Show Email? _ ## Receive News? _ ## ## Show Address? _ ## Receive RSS? _ ## #################################################################### EOF } ## This will echo out the contents of the helpString variable ## below the screen function showHelp() { tput cup 14 0 ## Clear out the last information echo " " tput cup 14 0 echo $helpString } ## Display the screen screen ## Set up the help information, and call the showHelp function ## that displays it helpString="Enter the user or press ENTER to quit" showHelp tput cup 4 18 read username ## If they don't enter a username, quit if [ "$username" = "" ] then exit fi ## Now go through and get the other data helpString="Enter Home Directory" showHelp tput cup 5 18 read directory helpString="What group does $username belong to?" showHelp tput cup 6 18 read group helpString="Do you want to show the Email Address to others? [y/n" showHelp tput cup 11 19 read showEmail helpString="Do you want to show your Home Address to others [y/n]" showHelp tput cup 12 19 read showAddress helpString="Would you like to receive the News Letter?" showHelp tput cup 11 54 read getNews helpString="Would you like to receive the RSS Feed?" showHelp tput cup 12 54 read getRSS helpString="Thank you for your input" showHelp echo "" |