kernel이라는 단어로 시작하는 각 줄에 단어를 추가하려면 어떻게 해야 합니까?

kernel이라는 단어로 시작하는 각 줄에 단어를 추가하려면 어떻게 해야 합니까?

줄이 많은 파일이 있습니다. "kernel"이라는 단어로 시작하는 각 줄의 끝에 "audit=1"이라는 단어를 추가하고 싶습니다. 예는 다음과 같습니다.

kernel /boot/vmlinuz-LOTS OF INFO.......M rd_NO_DM 

다음과 같아야합니다

kernel /boot/vmlinuz-LOTS OF INFO.......M rd_NO_DM audit=1

답변1

sed -e 's/^kernel.*/& audit=1' filename

결과를 동일한 파일에 쓰고 싶다면,sed -i 's/...

답변2

awk를 사용하면 사용할 수 있습니다

awk '$1 == "kernel" {$NF = $NF OFS "audit=1"} 1' file

또는

awk '$1 == "kernel" {$(++NF) = "audit=1"} 1' file

관련 정보