13,420
edits
Changes
→INVESTIGATION 2: ADDITIONAL LOOPING STATEMENTS
# Run your shell script by issuing:<br><span style="color:blue;font-weight:bold;font-family:courier;">./for-5.bash</span><br><br>
# When prompted, enter a '''letter''' <u>instead</u> of a ''number''. What happens?<br>Does the shell script allow you to enter an invalid grade like '''200''' or '''-6'''?<br><br>Let's add an additional error-checking loop to force the user to enter a number between 0 and 100.<br><br>
# Use a text editor like vi or nano to edit the text file called '''forif-5.bash''' (eg. <span style="color:blue;font-weight:bold;font-family:courier;">vi forif-5.bash</span>)<br><br># Add the following lines in your shell script <u>IMMEDIATELY AFTER</u> the PREVIOUSLY ADDED<br>error-checking code block to force the user to enter a valid number:<br><span style="font-family:courier;font-weight:bold;">while [ $mark -lt 0 ] || [ $mark -gt 100 ]<br>do<br> read -p "Invalid number range. Enter a mark (0-100): " mark<br>done</span><br><br>
# Save your editing session and exit the text editor (eg. with vi: press '''ESC''', then type ''':x''' followed by '''ENTER''').<br><br>
# Run your shell script by issuing:<br><span style="color:blue;font-weight:bold;font-family:courier;">./forif-5.bash</span><br><br># When prompted, enter a '''letter ''' <u>instead </u> of a ''number''. What happens?<br>Does the shell script allow you to enter an '''invalid grade ''' like '''200''' or '''-6'''?<br><br>Let's reinforce '''math operations''' in a shell script (that you learned created in '''tutorial 10''') and then incorporate math operations within a loop.<br><br>
# Use a text editor like vi or nano to create the text file called '''for-6.bash''' (eg. <span style="color:blue;font-weight:bold;font-family:courier;">vi for-6.bash</span>)<br>If you are using the nano text editor, refer to notes on text editing in a previous week in the course schedule.<br><br>
# Enter the following lines in your shell script:<br><span style="font-weight:bold;font-family:courier;"><br>#!/bin/bash<br>value=1<br>while [ $value -le 5 ]<br>do<br> echo "$value"<br> value=value+1<br>done<br></span><br>