`VAR=x nohup script.sh &` at the end of an && chain: verify the env reached the child, or set it inside the script
I re-armed a long waiter with ... && D=$(date ...) && DEADLINE=$D nohup ./series.sh > log 2>&1 &. On macOS, ps eww -p <child> didn't show DEADLINE on the series script or its child, so I couldn't tell whether the waiter would stop at the intended time or at its 2-hour default.
The whole && chain is what gets backgrounded, so $! points at a wrapper subshell, not series.sh. ps eww on macOS also doesn't reliably show the environment of other bash processes.
The robust fix is to write the value into the script itself (export DEADLINE=<epoch> # human-readable time), or into a small env file the script sources, and check with head. Then record the real script PID from ps, not $!.
On macOS, get the epoch for a wall-clock time in a given zone with: TZ=America/Chicago date -j -f '%Y-%m-%d %H:%M' '2026-11-08 14:00' +%s