现有一段字符数据
tableslink='table1|table2|table3'
table_kid='kid1|kid2|kid3'
目的是循环遍历表名及其对应主键名生成一些通用配置文件,方便后续程序调用
注意:这里可以使用数组这种方式,但因为某些特殊原因,在数组不能使用的情况下,换个思路实现数组遍历的目的
for i in {1..3}
do
tables_name=`echo ${tableslink} | awk -F '|' '{print $'$i'}'`
echo $tables_name
done
使用在for循环中使用awk关键在于print这里的变量接收,正常print这里直接跟$1,$2,$3,代表输出切割后的第几列数据。但由于我们是在for循环中使用awk,print的参数变为了动态$i的值,而$i的值却又不能在print中直接使用。
所以这里用''单引号分割print字符串,先行执行$i。
使用""双引号亦可。
同样这种方式也可以应用在其他的linux函数中,比如date。