No UNIX, tenho um processo que quero executar usando nohup. No entanto, em algum momento, esse processo aguardará um prompt em que eu tenho que entrar yes
ou no
que ele continue. Até agora, no UNIX, tenho feito o seguinte:
nohup myprocess <<EOF
y
EOF
Então, inicio o processo 'myprocess' usando nohup e canal em um arquivo com 'y' e depois fecho o arquivo. As linhas acima são efetivamente três comandos separados - ou seja, eu pressione Enter na primeira linha no UNIX, então recebo um prompt onde digito 'y' e pressione Enter para finalmente digitar 'EOF' e pressione Enter novamente. Portanto, isso funciona perfeitamente, mas meu problema está abaixo.
Quero agora executar isso no Perl, mas não sei como posso executar esse comando, pois ele tem mais de três linhas. Não sei se o seguinte funcionará:
my $startprocess = `nohup myprocess <<EOF &
y
EOF
`