Perché non posso usare il controllo dei lavori in uno script bash?

In questa risposta ad un’altra domanda , mi è stato detto

negli script non hai controllo del lavoro (e provare ad accenderlo è stupido)

Questa è la prima volta che ho sentito questo, e ho esaminato la sezione bash.info su Job Control (capitolo 7), senza trovare alcuna menzione di queste affermazioni. [ Aggiornamento: la pagina man è un po ‘migliore, menziona l’uso “tipico”, le impostazioni predefinite e l’I / O del terminale, ma non esiste una vera ragione per cui il controllo dei lavori è particolarmente sconsigliabile per gli script.]

Quindi, perché non funziona il controllo del lavoro basato su script e cosa lo rende una ctriggers pratica (alias “stupido”)?

Modifica: lo script in questione avvia un processo in background, avvia un secondo processo in background, quindi tenta di riportare il primo processo in primo piano in modo che abbia normale I / O del terminale (come se fosse eseguito direttamente), che può quindi essere reindirizzato da al di fuori della sceneggiatura . Non posso farlo a un processo in background.

Come notato dalla risposta accettata all’altra domanda, esistono altri script che risolvono quel particolare problema senza tentare di controllare il lavoro. Belle. E lo script lambasted utilizza un numero di lavoro hard-coded – Ovviamente cattivo. Ma sto cercando di capire se il controllo del lavoro è un approccio fondamentalmente condannato. Sembra ancora che potrebbe funzionare …