GNU/Linux >> Linux の 問題 >  >> Linux

Bashでビルド番号を増やしますか?

コマンドラインを使用してビルド番号を1つ増やしようとしています。

テストファイルの内容は次のとおりです。

SOME_DUMMY_VALUE = -1;
CURRENT_PROJECT_VERSION = 4;
SOME_SECOND_DUMMY_VALUE = -1;
CURRENT_PROJECT_VERSION = 4;

取得したい結果は次のとおりです。

SOME_DUMMY_VALUE = -1;
CURRENT_PROJECT_VERSION = 5;
SOME_SECOND_DUMMY_VALUE = -1;
CURRENT_PROJECT_VERSION = 5;

次のようなものを使用しようとしています:

sed -i -E "s/CURRENT_PROJECT_VERSION = (\d+);/CURRENT_PROJECT_VERSION = \1~;/" test.txt

私はbashスクリプトの経験がなく、番号を1つ増やす方法がわかりません。 (私はMacOSを使用していますが、sedコマンドはLinuxの場合とほとんど同じです)

承認された回答:

awk -F '= ' '/CURRENT_PROJECT_VERSION/{$2=$2+1";"}1' OFS='= ' input > output

テスト

cat file
SOME_DUMMY_VALUE = -1;
CURRENT_PROJECT_VERSION = 4;
SOME_SECOND_DUMMY_VALUE = -1;
CURRENT_PROJECT_VERSION = 4;

awk -F '= ' '/CURRENT_PROJECT_VERSION/{$2=$2+1";"}1' OFS='= ' file
SOME_DUMMY_VALUE = -1;
CURRENT_PROJECT_VERSION = 5;
SOME_SECOND_DUMMY_VALUE = -1;
CURRENT_PROJECT_VERSION = 5;

Linux
  1. Bashで文字列を16進数として読み取る方法は?

  2. Bashで割った数を四捨五入する

  3. Linux(BASH)で数値から上限整数を取得する

  1. Bashで変数が数値かどうかをテストするにはどうすればよいですか?

  2. Bash ループのカウンター インクリメントが機能しない

  3. RPM 仕様ファイルで Jenkins BUILD NUMBER を使用する

  1. bash sh - コマンドが見つかりません

  2. bash プロンプトにアイコンを追加する方法

  3. Bash変数の文字数をカウントするにはどうすればよいですか