내 파일에 다음 문자열이 포함되어 있습니다.
∗Cast and characters
* Bob Denver is Gilligan
하나 이상의 공백으로 시작하는 모든 줄에 해당 줄을 삽입하고 싶습니다 * ATTENTION *
. *
앞에는 빈 줄이 있고 그 뒤에는 그 위에 빈 줄이 삽입됩니다.
나는 가지고있다:
/^\*[ \t]/i\
\* ATTENTION \*
그것은 나에게 주었다
∗Cast and characters
* ATTENTION *
* Bob Denver is Gilligan
하지만 나는 원한다:
∗Cast and characters
∗ ATTENTION ∗
∗ Bob Denver is Gilligan
참고: 저는 sed의 BSD 버전을 가지고 있으므로 사용할 수 없습니다.\n
답변1
거의 다 왔습니다. 삽입된 텍스트에 이스케이프된 줄바꿈을 추가하기만 하면 됩니다.
/^\*[ \t]/i\
\
\* ATTENTION \*\
그러나 일반적인 접근 방식은 다음과 같습니다.
/^[*][[:blank:]]/!b
H;s/.*//;x
s/./&** ACHTUNG **&&/