awk - 값 변경

awk - 값 변경

파일에 다음이 포함됨

TIMEOUT=abc
TIMEOUT=5
TIMEOUT=
xTIMEOUT=5

나는부터 시작해야한다

"TIMEOUT=5" 

도착하다

"TIMEOUT=9"

이 명령은 작동합니다.
네 번째 줄도 변경하는데 이는 바람직하지 않습니다.

awk '$0 ~ "TIMEOUT=[:0-9:]" { $0 = "TIMEOUT=9" } {print}' file

이 명령은 아무것도 변경하지 않습니다

awk '$0 == "TIMEOUT=[:0-9:]" { $0 = "TIMEOUT=9" } {print}' file

어떻게 해야 합니까? 감사해요!

답변1

이렇게 해야 합니다:

awk '/^TIMEOUT=[:0-9:]/ { $0 = "TIMEOUT=9" } {print}' file

훨씬 더 간단합니다:

sed 's/^TIMEOUT=[0-9]/TIMEOUT=9/' file

관련 정보