아래와 같은 파일이 있습니다.
***ABC***
Line1*
L*ine2*
***DEF***
Line3*
Lin*e4*
다음 데이터를 ABC
사용하여 두 개의 파일을 만들어야 합니다 .DEF
ABC.dat:
Line1*
L*ine2*
DEF.dat:
Line3*
Lin*e4*
작은 쉘 스크립트를 사용하여 파일을 생성할 수도 있습니다.
답변1
$ awk '/^\*\*\*/{gsub(/\*/,""); fname=$0".dat"; next} {print > fname}' ip.txt
$ cat ABC.dat
Line1*
L*ine2*
$ cat DEF.dat
Line3*
Lin*e4*
/^\*\*\*/
다음으로 시작하는 줄과 일치합니다.***
gsub(/\*/,"")
*
해당 줄을 모두 삭제하세요.fname=$0".dat"
추가된 나머지 문자를 변수.dat
에 할당fname
next
다음 줄로 이동
print > fname
현재 줄 내용을 저장된 파일 이름으로 인쇄합니다.fname