grep 또는 sed를 사용하여 같은 줄에서 여러 일치 항목을 추출하는 방법

grep 또는 sed를 사용하여 같은 줄에서 여러 일치 항목을 추출하는 방법

다음과 같은 텍스트가 포함된 파일이 있습니다.

<TR><TD>5</TD><TD>Ukraine</TD></TR>
<TR><TD>3</TD><TD>Vietnam</TD></TR>
<TR><TD>3</TD><TD>Taiwan</TD></TR>
<TR><TD>3</TD><TD>Netherlands</TD></TR>
<TR><TD>3</TD><TD>South Korea</TD></TR>
<TR><TD>3</TD><TD>Great Britain</TD></TR>

<TD>요소 간의 정보를 추출하고 싶습니다 .

5 Ukraine
3 Vietnam
3 Taiwan
3 Netherlands
... 

답변1

이것을 확인하세요

$awk -F"[>|<]" '{print $5,$9}' input.txt
5 Ukraine
3 Vietnam
3 Taiwan
3 Netherlands
3 South Korea
3 Great Britain

sed 명령 사용

$ sed "s#<TR><TD>\(.\)</TD><TD>\(.*\)</TD></TR>#\1 \2#" input.txt
5 Ukraine
3 Vietnam
3 Taiwan
3 Netherlands
3 South Korea
3 Great Britain

관련 정보