값 비교 및 ​​파일 줄 삭제

값 비교 및 ​​파일 줄 삭제

다음 데이터가 포함된 파일이 있습니다 test1.txt.

nnn   90
vvv   80
ttt   50
sss   20

두 번째 열 값을 비교하고 해당 행을 삭제하고 싶습니다. 예를 들어 두 번째 열의 값이 20보다 작은 경우 해당 행 항목을 삭제합니다. 출력은 test1.txt다음과 같아야 합니다.

nnn   90
vvv   80
ttt   50

sed및 명령을 사용해 보았지만 awk작동하지 않습니다.

답변1

그리고 awk:

awk '$2>20' file

$2gether의 두 번째 필드가 그보다 큰지 확인합니다 20. 그렇다면 해당 행을 인쇄합니다.

답변2

그리고 bash:

$ while read -r a b; do [ "$b" -gt 20 ] && echo "$a $b"; done <file.txt 
nnn 90
vvv 80
ttt 50

그러면 각 행을 읽고 공백으로 구분된 열의 ​​두 번째 열에 20보다 큰 값이 있는지 확인하고, 그렇다면 행을 인쇄합니다.

관련 정보