linux for循环 + awk遍历

现有一段字符数据

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。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值