약 50,000개의 행과 약 100개의 열이 포함된 input.txt 파일이 있습니다. 일치하는 항목과 일치하는 패턴을 기준으로 분할하고 싶습니다. 파일 구분 기호는 공백과 탭입니다.
입력.txt
#information
#dateofcreation
#file type
AA BB CC DD EE FF GG HH II
AA bb ac aD FF GG hg ad
DA ga Dt pp Ee FF gg pm TT
DA bR AT GT Gg FF GG Hb Yh
NM gt Jh GT FF hb TH KM MM
입력 파일에는 모든 행에 일치 필드 FF가 있고 일부 행에는 일치하는 항목이 있습니다. 이 입력 파일에서 세 개의 출력 파일을 가져오고 싶습니다.
GG.txt
AA BB CC DD EE FF GG HH II
AA bb ac aD FF GG hg ad
DA bR AT GT Gg FF GG Hb Yh
gg.txt
DA ga Dt pp Ee FF gg pm TT
HB.txt
NM gt Jh GT FF hb TH KM MM
감사해요.
답변1
노력하다
awk '
match ($0, /FF *[^ ]* /) {FN = substr($0, RSTART+3, RLENGTH -4) ".txt"
gsub (/ /, "", FN)
print $0 > FN
}
' file