我正在尝试从文件中获取信息。
cat
的结果为2行或更多行。
例如
cat $f | grep "pqr" | grep "abc"
pqr: I(R) X(R) abc E v @ 23
pqr: I(R) X(R) abc F v @ 24
我想把这2行放在一个数组中,所以我写了下面的代码。但这不起作用。
arr1=`cat $f | grep "abc" | grep "xyz"`
for ((i=0; i<${#arr1[@]}; ++i))
do
printf "%s %s %s\n" "${arr1[i]}"
done
我也尝试了以下操作,但没有用:
arr1=$(cat $f | grep "abc" | grep "xyz")
arr1=( $(cat $f | grep "abc" | grep "xyz") )
我希望结果像
echo ${arr1[1]}
pqr: I(R) X(R) abc F v @ 24
和
echo ${arr1[0]}
pqr: I(R) X(R) abc E v @ 23
但这没有发生。有人可以指出我在做什么错吗?