como enviar entrada de um script para outro usando o script bash

0

Eu quero enviar a entrada de um script para outro através de scripts de shell

quando eu parar este script, ele exibe a mensagem que você quer continuar

$MAIN_SCRIPT_PATH/first.sh stop

Estou interrompendo o script usando outro script. Preciso enviar sim para este script first.sh . Como vou fazer isso?

ao parar o first.sh, ele solicita a entrada do usuário. Você quer continuar? Eu deveria mandar sim ....

    
por puspa 13.12.2016 / 11:00

3 respostas

0

Você pode tentar escrever para stdin do script e ver se isso funciona. Por exemplo,

echo yes | $MAIN_SCRIPT_PATH/first.sh stop

Caso contrário, existem programas como expect , que permitem que você aguarde determinados prompts antes de emular a entrada do usuário.

Além disso, esse é um script mal escrito, se estiver pedindo para a confirmação ser interrompida sem fornecer opções adicionais. Veja se first.sh --help exibe informações adicionais sobre como pular a entrada do usuário. Normalmente, há uma opção -y / -q / -s para scripts que silenciam a entrada do usuário.

    
por 13.12.2016 / 11:33
0

Se o seu script first.sh estiver em execução e, posteriormente, você decidir canalizar a entrada para ele, sua pergunta poderá ser uma possível duplicação de link

Se você precisar enviar dados únicos para o script first.sh, talvez isso responda à sua pergunta: link

    
por 13.12.2016 / 11:40
0

No linux, o pacote coreutils envia até o comando yes . Então você executaria:

yes | $MAIN_SCRIPT_PATH/first.sh stop
    
por 13.12.2016 / 11:43