Originally Posted by connie84911
I've run these scripts with "- x" to get verbose output and my app seems to get called
I don't understand how there's any uncertainty about whether the script/app is getting called. You need to answer that first. Modify the script to perform some kind of task that you can verify. For example, add this as the first command the script executes:
echo "$( /bin/date ) - Script started" >> /var/log/myscript_log.txt
Then, after booting, check that the file exists and that the timestamp is what you would expect. There should be no "seems to get called" after you do this.
If the /var/log/myscript_log.txt file does not exist, your script is not getting called. If it does exist, there's a problem with your script.
99% of the time, when a script works by manually starting it, but fails when automated, the problem is because of the environment variables--specifically PATH. I suggest you use absolute paths to ALL of your commands inside your script. If you want to understand the reason behind the environment variable difference, then open a terminal and read the bash man page: interactive and non-interactive shells. The startup process is different depending on which is invoked.