您可以使用命令test -t <文件描述符编号> 检查文件描述符是否是tty(附加到终端)。如果是,则可以提示用户。如果不是,则输出可能被管道或重定向到其他地方。 if test -t 1 ; then echo stdout is a tty fi