我正在编写一个POSIX shell脚本,可能或可能不会从stdin接收输入(如foo.sh< test.txt,非交互式)。如何查看stdin中是否有任何内容,以避免在读取-r行时停止播放?
如果我得到正确的问题,您可以尝试以下方式:
#!/bin/sh if [ -t 0 ]; then echo running interactivelly else while read -r line ; do echo $line done fi