Bash 스크립트에서 특정 파일 줄 뒤에 텍스트 추가

Bash 스크립트에서 특정 파일 줄 뒤에 텍스트 추가

ip.txtIP 주소가 포함된 txt() 파일이 있습니다. TCP와 UDP로 그룹화합니다. 문서에서 발췌한 내용은 다음과 같습니다.

#TCP
162.298.38.930
162.298.38.931
162.298.38.932
#UDP
162.298.38.930
162.298.38.931
162.298.38.932

나는 특정 IP( 162.298.38.929)를 가지고 있고 bash 스크립트를 통해 TCP 및 UDP 줄 아래의 ip.txt에 둘 다 추가할 수 있으므로 다음과 같이 보일 것입니다.

#TCP
162.298.38.929
162.298.38.930
162.298.38.931
162.298.38.932
#UDP
162.298.38.929
162.298.38.930
162.298.38.931
162.298.38.932

Bash 스크립트에서 이를 어떻게 달성할 수 있나요? 제 경우에는 파일에 주석을 많이 추가해서 #TCP, #UDP 줄번호가 바뀔 수 있기 때문에 줄번호가 작동하지 않습니다. Bash 스크립트는 TCP 및 UDP에서 IP를 검색하고 추가해야 합니다.

답변1

GNU Sed를 사용한 추가 작업

두 섹션이 모두 있고 162.298.38.932두 항목 바로 아래에 다른 IP 주소를 추가하려는 경우 다음 sed 스크립트가 작업을 수행합니다.

sed '/162\.298\.38\.932/a\162.298.38.929' ip.txt

관련 정보