Pergunta

Eu tenho um script que pede ao utilizador para a entrada com 'ler'. Se stdout ou stderr é canalizada para algo diferente de um terminal, gostaria de suprimir esta etapa. Isso é possível?

Foi útil?

Solução

Você pode verificar se um FileDescriptor é um tty (ligada a um terminal) com o teste de comando -t . Se for, você pode solicitar ao usuário. Se não for, a saída é provavelmente canalizado ou em algum lugar redicted.

if test -t 1  ; then
  echo stdout is a tty
fi
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top