我有一个头文件,其中包含许多#define
形式为 的宏AAA_xxxxx
,其中AAA
始终是一组三码,并且xxxxx
始终是一个数值。我需要修改文件,以便将#define AAA_xxxxx
其作为#define AAA_xxxxx xxxxx
.
我能想到的最好的例子是 Oracle ORA-xxx(错误代码)。例如,如果我有一条像 ...
#define ORA_00001 // "unique constraint violated"
我需要一个脚本来替换该行,使其看起来像...
#define ORA_00001 00001 // "unique constraint violated"
...无需修改文件的其余部分或行本身。
我相信这awk
是我的答案,但我似乎无法正确理解语法......
awk '{ if ( $1 == "#define" ) parse_and_print_the_line($0) ; else print $0 }'
任何想法(awk 与否)将不胜感激。