GNU/Linux >> Znalost Linux >  >> Linux

Zvýšit číslo sestavení v Bash?

Snažím se zvýšit číslo sestavení o 1 pomocí příkazového řádku.

Zde je obsah mého testovacího souboru:

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

Výsledek, který chci získat, je následující:

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

Snažím se použít něco jako:

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

Nemám zkušenosti se skriptováním bash a nevím, jak mohu zvýšit číslo o jednu. (Používám MacOS, ale příkaz sed je téměř stejný jako v Linuxu)

Přijatá odpověď:

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

Testy

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. Jak otestuji, zda je proměnná číslo v Bash?

  2. Nefunguje přírůstek čítače ve smyčce Bash

  3. Jak přidat ikonu do výzvy bash

  1. Jak číst řetězec jako hexadecimální číslo v Bash?

  2. Jak mohu spočítat počet znaků v proměnné Bash

  3. Použití Jenkins BUILD NUMBER v souboru specifikace RPM

  1. Zaokrouhlete dělené číslo v bash

  2. Získejte stropní celé číslo z čísla v linuxu (BASH)

  3. bash sh - příkaz nenalezen