It’s basically doing step by step print lines for you. If you have easy access to a bash prompt here’s an example (for clarity, the lines leading with $ are what I typed into the shell. The lines without are what is output’d):
You see how the first example broke down what happened bit by bit and the + noted the depth of interpretation for the line? This basically helps debug narly scripts … which if they’re narly enough … just rewrite them in a “proper” language.
If you are writing a script that is more than 100 lines long, or that uses non-straightforward control flow logic, you should rewrite it in a more structured language now.
It’s basically doing step by step print lines for you. If you have easy access to a bash prompt here’s an example (for clarity, the lines leading with
$
are what I typed into the shell. The lines without are what is output’d):$ set -x $ echo `expr 10 + 20 ` ++ expr 10 + 20 + echo 30 30
$ set +x $ echo `expr 10 + 20 ` 30
You see how the first example broke down what happened bit by bit and the
+
noted the depth of interpretation for the line? This basically helps debug narly scripts … which if they’re narly enough … just rewrite them in a “proper” language.What’s that old google adage ( https://google.github.io/styleguide/shellguide.html )