我有一个名为test.txt的文件,其中包含
1 2 3 4
2 3 4
1 12 2 4 5 66
我想逐行阅读,每行我想提取元素。
我试过
while read lines;
do
echo $lines
done < test.txt
它正确打印保存在txt文件中的矩阵的行,但现在我不知道如何从变量行中提取单个元素...
我想做这样的事情
while read lines;
do
((for i = 0; i<=numberofelementline; i++))
do
element = ....
echo $element
done
done < test.txt
答案 0 :(得分:2)
read -a line <<< $a
for i in ${!line[@]}; do echo ${rline[i]}; done
我们读取文件/行并存储为数组。接下来,对于数组的每个元素,我们运行for循环。通过这种方式,您可以了解元素及其位置。
答案 1 :(得分:0)
您可以将所有空格替换为新行,并使用另一个while
循环再次读取它们:
while read LINE; do
echo "$LINE" | tr -s ' ' '\n' | while read NUM; do
echo $NUM
done
done < test.txt
答案 2 :(得分:0)
如果您只想回应它们:
cat test.txt | tr ' ' '\n'
如果您想使用这些数字:
while read num; do
echo $num
...
done < <( cat test.txt | tr ' ' '\n' )