の形式で多くの#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 }'
どんなアイデアでも(問題があるかどうかにかかわらず)大歓迎です。