Os descritores de arquivos são inteiros pequenos.
Em particular, stdin
é fd 0; stdout
é fd 1; e stderr
é fd 2.
Você terá visto o mesmo uso de "descritor de arquivo" em linhas como:
./cmd 2>&1
O que significa "executar ./cmd
, redirecionando fd 2 (stderr) para fd 1 (stdout).
O uso normal de -t
é dizer se a entrada está vindo de um terminal:
[[ -t 0 ]] && echo "Input is coming from a terminal"