使用 Bash 脚本增加变量

使用 Bash 脚本增加变量

我有一个包含以下文本的文件。

//
//  test_file.h
//  test project
//
//  Created by Test User
//

#ifndef test_file_constants_h
#define test_file_constants_h

// Generic includes
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>

#define PF_MASTER_VERSION 3.0.0
#define PF_BUILD_VERSION 1

#endif

我需要编写一个脚本,PF_BUILD_VERSION每次运行时都可以将 递增 1。我试过看sedAWK并失败了!

答案1

一个awk基于的解决方案可能是:

awk '/^#define PF_BUILD_VERSION / {$3++} 1' infile >outfile  &&  mv outfile infile

答案2

Perl 方法:

perl -pe 's/^#define PF_BUILD_VERSION \K(\d+)/$1+2/e' file > newfile

或者,就地编辑文件:

perl -i -pe 's/^#define PF_BUILD_VERSION \K(\d+)/$1+2/e' file

相关内容