我有一个行数为N
的文件。我需要读取每一行并将其存储在变量中。
例如,var1中的Firstline,var2中的Secondline等
我尝试了以下while
循环,
count=1;
while read line
do
var$count=`echo $line`
echo -e "$var`$count`"
done< input.txt
在上面的代码中,我在上面的一行中遇到错误!
如何使用另一个引用变量引用变量?
在这里,我只是回应但实际上我希望存储在变量中的值进行一些算术计算(比如计算时间平均值)。
答案 0 :(得分:4)
正如Mark Setchell所说,阵列是更好的解决方案。它们也可以在KSh中找到:
set -A lines
count=1
while read line; do
lines[$count]=$line
echo -e ${lines[$count]}
count=$(( $count + 1 ))
done < input.txt
有关详细信息,请查看来自O&#39; Reilly&#34;了解Korn Shell&#34;的simple introduction with examples或this chapter。书。
答案 1 :(得分:0)
在bash或ksh中使用数组:
array=( $(< input.txt) )
echo ${array[0]} # first element
echo ${array[1]} # second element
echo ${#array[*]} # length
请参阅here。