Logic errors
Now let's talk about logic errors. These can be very hard to diagnose, and unfortunately I don't have any magical ways to avoid those. There are some things that can be pointed out however to help track them down.
A common problem with coding is what is called off by 1 errors. This was caused when computer language designers in the sixties decided to number things starting at 0 instead of 1. Computers will happily start counting anywhere you want them to and never complain at all, but most humans tend to do better when they start counting at 1. Most of my peers would probably disagree with this, but since I was the one who always had to fix their off by 1 defects I stand by my comments.
Let's look at the following very simple script:
Chapter 9 - Script 4
#!/bin/sh # # 6/7/2017 # echo "Chapter 9 - Script 4" x=0 while [ $x -lt 5 ] do echo "x: $x" let x++ done echo "x after loop: $x" let maxx=x y=1 while [ $y -le 5 ] do echo "y: $y" let y++ done echo "y after loop: $y" let...