Bash遍历数组-获取索引

时间:2019-06-03 20:44:43

标签: bash loops indexing match

我已经看到了很多在bash中循环遍历的答案,这样您不仅可以获取索引,还可以获取该索引的变量 at 。例如

for i in "${!foo[@]}"; do 
  printf "%s\t%s\n" "$i" "${foo[$i]}"
done

但是,对于我的变量 foo ,其定义为:

foo=$(< varlist.txt)

其中varlist.txt是一个简单的10行文本文件,每行包含4个字母的代码。当我尝试上述方法时,输出不匹配。我在这里想念什么?

例如:

vi varlist.txt

 QOP1
 QOP2
 LMA1
 LMA2
 NKO1
 NKO2
 POZ1
 POZ2
 CCS1
 CCS2

vi file_to_test.txt

 #text
 #more header text
 POZ1
 CCS2

输出应为:

 7 POZ1
 10 CCS2

因为它们是varlist文件的第7和第10个索引。

0 个答案:

没有答案