Is there some option I can give to just check the syntax of a [bash] shell script to check the syntax of it, but not actually execute anything nor cause any potential damage?
Try out http://www.shellcheck.net
$ shellcheck myscript.sh In myscript.sh line 590: for f in $*; do ^-- SC1009: The mentioned parser error was in this for loop. In myscript.sh line 617: if [ ! -e "$somefile".vcf ]; then ^-- SC1046: Couldn't find 'fi' for this 'if'. ^-- SC1073: Couldn't parse this if expression. In myscript.sh line 1026: done ^-- SC1047: Expected 'fi' matching previously mentioned 'if'. ^-- SC1072: Unexpected keyword/token. Fix any mentioned problems and try again.
Well, it did not tell me the 'if' was missing on line 634 but it was pretty helpful.