다음과 같은 파일이 있습니다
Tran No Date Vchr No Debit Credit
1239 05/06/2015 115 750.00 .00
instal A Roy Sr/Ag/Pol No : 33333
being the exp towards tour
neft ac no 00088888
1295 10/06/2015 123 400.00 .00
instal P Paul Sr/Ag/Pol No :54322
being the mobile bill payment
neft zc no 00222222
내가 원하는 출력은 다음과 같습니다.
1239 05/06/2015 115 750.00 .00 A Roy 33333 being the exp towards tour
1295 10/06/2015 123 400.00 .00 P Paul 54322 Being the mobile payment
결과를 얻기 위해 사용할 수 있습니까 awk
?
답변1
소개된 샘플 날짜를 기준으로 작업을 쉽게 완료할 수 있습니다.sed
sed -n '/^12[0-9][0-9]/{N;N;s^\n\|\s*Sr/Ag/Pol\s*No\s*:\s*\|\s\s\+^\t^gp;}' file
또는 원하는 경우 다음을 사용할 수 있습니다 awk
.
awk '/^12/,/:/{sub("\\s*Sr/Ag/Pol No :\\s*","\t"); NF=NF; printf $0" "}/being/' OFS='\t' file