我对sh非常新,我希望在理解脚本的输出方面提供一些帮助。
我表演:
(echo a b c; echo 1 2 3) > data_file
然后我运行脚本(run.sh):
run.sh < data_file | tr 'a-z' 'A-Z'
#!/bin/sh
while read a b
do
echo $a $a $b $b $c $c
echo $a $a $b $b $c $c
done
输出变为:
A A B C B C
A A B C B C
1 1 2 3 2 3
1 1 2 3 2 3
我不明白的是,当变量$ b处于打印位置时,为什么会显示C.它不应该打印b?此外,没有c变量,但是在其位置上打印了一个值。 我原以为输出是这样的:
A A B B
A A B B
C C 1 1
C C 1 1
2 2 3 3
2 2 3 3
答案 0 :(得分:0)
将B的值存储为“B C”