awk命令使用

16 篇文章 0 订阅

awk是linux下很有用的列编辑工具。示例如下

文件tran_map.txt内容如下

TR   zhuanzhang

SA   unknown

 

1.组织字符串。将第一列以字符串形式打印出来

 awk '{ print "\""$1"\","}' tran_map.txt

"TR",

"SA",

 

2.形成格式化代码,将第一列值转换为第二列值;

采用文件脚本方式。脚本文件为 bat_trans.awk,内容如下

BEGIN {print "//begin map translate"}

{print "if(memcmp(strTemp, \""$1"\", 2) == 0)\r\n{\r\nmemset(strTemp, 0, sizeof(strTemp);\r\nmemcpy(strTemp, \""$2"\", sizeof(strTemp));\r\n}"}

END {print "//end map translate"}

输入命令

awk -f bat_trans.awk tran_map.txt

//begin map translate

if(memcmp(strTemp, "TR", 2) == 0)

{

memset(strTemp, 0, sizeof(strTemp);

memcpy(strTemp, "zhuanzhang", sizeof(strTemp));

}

if(memcmp(strTemp, "SA", 2) == 0)

{

memset(strTemp, 0, sizeof(strTemp);

memcpy(strTemp, "unknown", sizeof(strTemp));

}

//end map translate

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值