Hope the title is close enough; didn't quite know how to put this...
OK.
We have a hypothetical script, script.a, with one simplistic line:
bash ./nextDir/script.b
Now script.b has a bit more going for it; and does file moves, copies, and renames, calling all the targets with respect to itself.
Manually running script.b from a command prompt at its dir is no problem; all moves, copies, and renames are executed on the targets without issue.
OTOH, running script.b from script.a changes the effective recursion level for script.b to that of script.a; and nothing executes properly...
So, I guess this is a rock-bottom basic question, but the answer eludes me: How do we create a script.a which calls script.b without changing its recursion level?
However, MadeInGermany's post takes care of this issue too.
You could also switch/change to absolute paths too.
Or use a variable as 'basedir', to wich you change before executing the relative paths.