从标准输入读取 bash 中的输入

Reading input in bash from stdin

这是我的输入:

99116784 12 12 0 p

99116784 12 12 0

这是我的代码

 while read line || [[ -n "$line" ]];
    do for var in $line 
          do echo $var
       done
 done

如果我随后打印 $line,则打印 p 只是做 echo $var 不打印或不知道 p 在那里,有人知道为什么吗?

我重新组织了你的代码,它在我的 Mac 上的 bash 中运行。

#!/bin/bash
while read line || [[ -n "$line" ]];
do
    for var in $line 
    do
        echo $var
    done
done
exit 0

运行它

./test.sh
99116784 12 12 0 p
99116784
12
12
0
p
99116784 12 12 0
99116784
12
12
0