sed를 사용하여 일부 텍스트를 해당 줄 번호로 바꾸는 방법은 무엇입니까?

sed를 사용하여 일부 텍스트를 해당 줄 번호로 바꾸는 방법은 무엇입니까?

줄의 일부(전부는 아님)가 다음과 같은 파일이 있습니다.

Sequence: n

n해당 줄 번호로 바꾸고 싶습니다 .

sed를 사용하여 이 작업을 어떻게 수행할 수 있나요?

답변1

매우 간단합니다 awk(@glenn jackman에게 감사드립니다).

awk '/Sequence: n/ { $2 = NR } { print }' input-file

에 관해서는 sed두 번 자세히 설명해야만 이 작업을 수행할 수 있었습니다( GNU sedssed:)로 테스트함:

sed '/^Sequence: n$/{s/n$//p;=;d;}' | sed '/^Sequence: $/{N;s/\n//;}' 

첫 번째는 "Sequence:" 다음 줄에 줄 번호를 삽입하고 두 번째는 두 줄을 연결합니다.

관련 정보