将每行echo输出保存为变量BASH

时间:2016-10-12 01:03:47

标签: bash for-loop echo

我正在努力创建一个简单的脚本,我可以将每行保存为变量供以后使用。然而,它并没有顺利进行。请有人帮帮我。

read -p  "Enter the number of user and press [ENTER]:" num
   for ((i=1; i<=$num; i++)); do
           var$i="|-> Line $i"
           echo "var$i"

   done

我试图获得看起来像这样的输出

|-> Line 1
|-> Line 2
|-> Line 3
|-> Line 4

2 个答案:

答案 0 :(得分:3)

了。只需使用数组:

read -p  "Enter the number of user and press [ENTER]:" num
for ((i=0; i<$num; i++)); do
    var[$i]="|-> Line $((i+1))"
    echo "${var[i]}"
done

for line in "${var[@]}"
do
    echo "Saved line: $line"
done

后者给出了一个示例,说明如何在以后检索它。此外,数组是零索引的,我已相应调整它。

答案 1 :(得分:0)

这可以满足您的要求吗?

by(dat, 1:15, function(a.row){sample.matrix[a.row$x, a.row$y]=1})