当前工作中经常遇到需要格式化输出字符串的场景,今天整理下使用awk + printf快速实现的方法。
1.数据源
选取postgresql代码库中kwlist.h文件(记录PG中保留关键字和非保留关键字信息)中的一部分作为源数据。
[root@localhost Postgres]# cat kwlist.h | grep -E '^PG_KEYWORD' | head -n 20 > source_data.txt
[root@localhost Postgres]# cat source_data.txt
PG_KEYWORD("abort", ABORT_P, UNRESERVED_KEYWORD)
PG_KEYWORD("absolute", ABSOLUTE_P, UNRESERVED_KEYWORD)
PG_KEYWORD("access", ACCESS, UNRESERVED_KEYWORD)
PG_KEYWORD("action", ACTION, UNRESERVED_KEYWORD)
PG_KEYWORD("add", ADD_P, UNRESERVED_KEYWORD)
PG_KEYWORD("admin", ADMIN, UNRESERVED_KEYWORD)
PG_KE