Como armazenar erro padrão para uma variável no bash

Como armazenar erro padrão para uma variável no bash

Em Bash, você pode armazenar a saída de erro padrão de um comando para uma variável usando o '2> & 1' operador e o '$ ()' Sintaxe de substituição de comando. Aqui '2>' redireciona a mensagem de erro para & 1 ', que representam para a saída padrão. No caso do Bash Shell funciona como o dispositivo de saída padrão.

  • Por exemplo, para armazenar a saída de erro padrão do 'ls' Comando para uma variável Erros nomeados, você pode usar o seguinte comando:
    erros = $ (LS não existente de arquivo 2> & 1)  
    Armazenar erro padrão em uma variável bash

    Como alternativa, você pode usar o '$?' parâmetro especial para armazenar o status de saída de um comando para uma variável. O status de saída é um valor numérico que indica se o comando foi bem -sucedido ou não. Um valor de '0' indica sucesso, enquanto um valor diferente de zero indica um erro.

  • Por exemplo, para armazenar o status de saída do 'ls' Comando para uma variável denominada status, você pode usar o seguinte comando:
    LS não existente de arquivo  status = $?  
  • Você pode então usar o '$ status' variável para verificar o status de saída do 'ls' comando e tome as medidas apropriadas com base no resultado. Por exemplo: #!/usr/bin/Env Bash # PUR seus comandos aqui se [$ status -ne 0]; então eco "o último comando falhou com um erro."Fi
    123456#!/usr/bin/Env Bash # PUR seus comandos aqui, [$ status -ne 0]; então eco "o último comando falhou com um erro."Fi

Lembre -se de que o '$ ()' A sintaxe de substituição de comando permite executar um comando e substituir sua saída no lugar. O '2>' O operador redireciona a saída de erro padrão do comando para o '& 1' fluxo, que é o fluxo de saída padrão. Isso permite capturar a saída padrão e o erro padrão do comando em uma única variável.