Você não pode se livrar dele e não há motivo para removê-lo de qualquer maneira. Isso vem do bash verificar se a entrada está vindo de um terminal (ele chama isatty
). Ele não usa essas informações no seu caso, apenas quando várias opções são passadas. Se você está curioso sobre os detalhes, leia o código-fonte ( read_builtin
function em builtins/read.def
).
O fato de que o TCGETS
ioctl retorna ENOTTY
é como o aplicativo pode dizer que a entrada não é um terminal. É esperado. Só porque uma função retorna um status de erro não significa que algo esteja errado.