Isso é esperado se o seu terminal tiver a opção tostop
habilitada. Quando isso é definido, qualquer processo em segundo plano que tenta gerar saída para o terminal recebe o sinal SIGTTOU
, e o padrão desse sinal O manipulador interrompe o processo. (Isso é feito para que a saída dos processos em segundo plano não atrapalhe seu terminal.)
Você pode desativar esse recurso executando stty -tostop
no mesmo terminal.
Sua situação atual:
$ stty tostop
$ php ./t.php &
[1] 6484
$
[1]+ Stopped php ./t.php
$ # no messing up of the terminal, process stopped
$ fg
php ./t.php
0^C
$
Desativar esse recurso:
$ stty -tostop
$ php ./t.php &
[1] 6481
$ # 01an2d 3now 45 6it m7esses 8up 9my term!