In your current script, the nohup block uses a here-document (<<'EOF') with single quotes, which prevents variable expansion inside the block. As a result, $myVariable is not expanded, and command_1 receives the literal string $myVariable instead of its value.
If you want the variable to be expanded, remove the single quotes around EOF:
bashmyVariable=`command_0` nohup bash <<EOF command_1 $myVariable EOF command_2 $myVariable
This way, $myVariable is expanded before the nohup block is executed.
If you need to keep the single quotes (e.g., to prevent other expansions), you can escape the variable and pass it via env:
bashmyVariable=`command_0` nohup env myVariable="$myVariable" bash <<'EOF' command_1 "$myVariable" EOF command_2 "$myVariable"
This explicitly passes the value of myVariable to the subshell.
If you want to keep the here-document as-is and still pass the variable, you can define a function:
bashmyVariable=`command_0` nohup bash -c ' myVariable="$1" shift command_1 "$myVariable" ' _ "$myVariable" command_2 "$myVariable"