sed는 문자가 일치하면 교체됩니다.

sed는 문자가 일치하면 교체됩니다.

이 속성이 포함된 속성 파일을 변경해야 합니다.

ro.product.firmware=0.0.1 

Bash 스크립트의 다른 부분에서 호출되는 함수의 새 값을 갖습니다. 정규식을 작동시킬 수 없습니다. 이 특별한 경우에는 값을 0.0.1에서 $1로 변경해야 하지만 값이 항상 0.0.1은 아닙니다. 현재 내가 가지고 있는 정규식은 다음과 같습니다.

sed -i 's/^(ro\.product\.firmware).*$/(ro\.product\.firmware="$1")'

답변1

귀하의 경우에는 다음과 같이 작동합니다.

sed -ri 's/^(ro\.product\.firmware\=)(.*)$/\1'"$1"'/g' file.txt

여기,

-r ==> for using extended regex
\1 ==> for the first captured group

답변2

#!/bin/bash

#some logic

export value=$(some_function)
#note the export

#more code

perl -ie 's/^ro\.product\.firmware.*$/ro.product.firmware=$ENV{value};'

#yada yada yada

관련 정보