Chinaunix

标题: 【求改进】对一个shell数组进行赋值 [打印本页]

作者: x-dongzi    时间: 2010-04-17 15:11
标题: 【求改进】对一个shell数组进行赋值
本帖最后由 x-dongzi 于 2010-04-17 15:12 编辑

geshu这个文件的内容如下:
  1. 17549  725
  2. 2829  500
  3. 2905  500
  4. 3231  500
  5. 15944  505
  6. 15975  505
  7. 16050  505
  8. 15978  505
  9. 15827  505
  10. 15743  445
  11. 15668  445
  12. 15706  445
  13. 16074  475
复制代码
我对array赋值的语句如下,就是希望每行的第一列做索引,第二列做数值。感觉自己写的太笨了。希望得到大家的指点。谢谢啦。
  1. while read line
  2. do
  3. array[`echo $line|awk '{print $1}'`]=`echo $line|awk '{print $2}'`
  4. done<geshu
复制代码

作者: Shell_HAT    时间: 2010-04-17 15:20

  1. while IFS=" " read column1 column2; do array[$column1]=$column2; done < urfile
复制代码

作者: x-dongzi    时间: 2010-04-17 16:24
谢谢。
作者: lucash    时间: 2010-04-17 16:57
  1. eval `awk '{print "array["$1"]="$2}' geshu`
复制代码





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2