Neste tutorial, exploraremos o comando Bash Wait no Linux.
Sintaxe:
A sintaxe geral do comando Wait in Linux é:
aguarde [opção] id
ID seria um ID de processo ou ID do trabalho.
Explicando o comando Bash Wait no Linux:
Primeiro, crie um arquivo usando o comando Touch:
$ touch Bashwait.sh
Faça este arquivo executável usando o comando abaixo:
$ chmod +x nome do arquivo
Depois que os privilégios executáveis forem concedidos ao arquivo, abra o arquivo e escreva um script no arquivo Bash:
#!/BIN/BASH
sono 3 &
ProcessId = $!
eco "pid: $ processId"
aguarde $ processId
eco "status de saída: $?"
$! é uma variável no Bash que armazena o PID do processo mais recente.
Agora, execute o script da seguinte forma:
$ ./nome do arquivo
$ ./Bashwait.sh
O ID do processo e o status de existência aparecerão no shell.
Usando -n opção:
Com a opção -n, o comando Wait aguarda apenas um único trabalho do ID do processo fornecido ou especificações de trabalho para terminar antes de retornar seu status de saída. Espere -n aguarde que qualquer trabalho de fundo termine e devolva o status de saída do trabalho se nenhum argumento for fornecido.
Escreva as linhas abaixo do seu script:
#!/BIN/BASH
sono 30 &
sono 8 e
sono 7 &
espere -n
eco "o primeiro emprego foi concluído."
espere
eco "Todos os empregos foram concluídos."
Em seguida, execute o script novamente e quando o primeiro trabalho for concluído, ele imprimirá a mensagem no terminal e aguarde a conclusão de todos os outros trabalhos.
Usando -f opção:
A opção -f aguarda que cada ID de processo ou trabalho pare antes de devolver o código de saída. O controle de emprego está disponível apenas para instruções responsivas por padrão.
Open Terminal e Run Command:
Aguarde o processo 3944.
Abra uma janela de terminal diferente e execute o comando Kill para encerrar o processo.
O status será alterado. O comando Wait será concluído e retornará o código de saída do processo.
Repita as etapas acima com o comando -f.
Script com comando de espera:
Estamos usando 'olá.Sh 'e' Bash.sh 'scripts para demonstração. O 'olá.O script sh 'imprime números de 1 a 5, e' bash.sh 'script chama olá.sh e o executa em segundo plano, tendo o pid de olá.sh e esperando que ele termine.
Crie dois scripts com o nome Hello and Bash:
Adicione as linhas abaixo dadas no olá.Arquivo SH:
#!/BIN/BASH
para i em 1 2 3 4 5 6 7 8 9 10
fazer
eco “Olá.sh - loop número $ i.”
feito
Adicione as linhas abaixo dadas no script Bash:
#!/BIN/BASH
eco “Comecei a Bash.sh ”
eco “Comecei olá.sh ”
./olá.sh &
process_id = $!
aguarde $ process_id
eco “olá concluído.sh
Saída:
Conclusão:
Quando um usuário deseja interromper um processo, o sistema libera todos os recursos mantidos pelo processo e aguarda que outro inicie. Precisamos notificar o processo que ele pode reiniciar a execução assim que os outros processos forem concluídos. O comando Wait in Bash espera para concluir a execução e retorna o status de saída quando a execução do processo for concluída. Neste manual, vimos alguns exemplos do comando Bash Wait em Linux.