linux 특정 파일 검색을 통해 어느 숫자보다 큰 행 출력하는방법이 궁금합니다.

heshd의 이미지

안녕하세요! linux 에서 어느 파일을 검색하여 특정숫자 보다 큰 행을 모두 출력하고 싶습니다.

예를 들면

a.txt 가 아래와 같다 할때 15보다 큰 행을 모두 출력하고 싶습니다 어떻게 할 수 있을까요? 정규표현식으로 해보려고 했는데 잘 안되네요 ㅜㅜ

1
3
4
5
6
10
12
4
2
64
2
4
34
65
23
54
100

shint의 이미지

g++ test.cpp

#include <iostream>
#include <stdio.h>
#include <stdlib.h>
 
 
int main(int argc, char** argv) 
{
    FILE * fp;
    fp = fopen("test.txt", "rt");
    if(fp == NULL)
    {
        return 0;
    }
 
    int cnt=0;
    while(1)
    {
        char buf[100];
        char * p = fgets(buf, 100, fp);
        if(p == NULL)
        {
            break;
        }
 
        int n = atoi(buf);
        if(n > 15)
        {
            printf("[ %5d번째줄] 15보다          큰 값 : %5d\n", cnt, n);
        }
        else
        {
            printf("[ %5d번째줄] 15보다 작거나 같은 값 : %5d\n", cnt, n);
        }
        cnt++;
    }
    fclose(fp);
   	return 0;
}

----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.

매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.

각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com

heshd의 이미지

상세한 댓글 감사드립니다.

linux 에서 command 로 던질거라서 거리는 좀 있지만 감사합니다!

백연구원의 이미지

cat a.txt | awk '{if ( $1 > 15 ) {print $1} }'

소곤소곤

heshd의 이미지

정말 감사합니다!

qiiiiiiiip의 이미지

awk '{if ($1 > 15) print $0}' a.txt