verifique isatty no bash

Eu quero meu shell para detectar se o comportamento humano, em seguida, mostre o prompt.

Então, suponha que o nome do arquivo seja test.bash

<code>#!/bin/bash
if [ "x" != "${PS1:-x}" ] ;then
 read -p "remove test.log Yes/No" x
 [ "$x" = "n" ] && exit 1
fi
rm -f test.log
</code>

Mas eu achei que não funcionaria se eu não tivesse definido o PS1. Existe melhor método?

meus métodos de teste:

<code>./test.bash                  # human interactive
./test.bash > /tmp/test.log  # stdout in batch mode
ls | ./test.bash             # stdin in batch mode
</code>

questionAnswers(4)

yourAnswerToTheQuestion