

6·
2 days agoIt is normal usage. Though personally I’d probably make another “main” function, to avoid declaring a bunch of global variables
It is normal usage. Though personally I’d probably make another “main” function, to avoid declaring a bunch of global variables
I don’t know if this applies to other shells, but bash will not only execute your script line-by-line, it will also read it line-by-line. Which means that you can modify the behavior of a running script by editing lines that have not yet been executed*. It’s absolutely bonkers, and I’m sure that it has caused more than one system failure, during upgrades.
* For example, if you run the following script
echo "hello" sleep 5 echo "goodbye"
and then edit the third line before the 5 second sleep has elapsed, then the modified line will be executed.