Извлеките строку из файла и сохраните ее в переменной - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть файл со строкой ниже.

ARG VERSION="6.0.0" // Here 6.0.0 is the version and could be any number.

Мне нужно извлечь это значение 6.0.0 и сохранить его как переменную оболочки для последующего использования в сборке.

Есть ли способ достичь этого?

Ответы [ 2 ]

0 голосов
/ 27 апреля 2020

Не могли бы вы попробовать следующее.

awk 'match($0,/ARG VERSION="[^"]*/){print substr($0,RSTART+13,RLENGTH-13)}' Input_file

Объяснение: Добавление подробного объяснения выше.

awk '                                      ##Starting awk program from here.
match($0,/ARG VERSION="[^"]*/){            ##Using match function to match regex ARG VERSION=" till " here.
  print substr($0,RSTART+13,RLENGTH-13)    ##Printing sub-string of current line starting point is RSTART ending point is RLENGTH.
}
' Input_file                               ##Mentioning Input_file name here.
0 голосов
/ 27 апреля 2020

sed -nE 's/ARG VERSION=\"(.*)\"/\1/p' <file_with_string> может работать.

В этом случае мы фиксируем то, что находится между двойными кавычками, выбираем эту первую группу захвата (\1) и печатаем (p)

...