Grep을 통해 경기 전후 라인 표시

Show Lines Before After Match Via Grep



Grep은 일부 파일에서 작업하거나 특정 패턴을 검색하는 등 Linux 시스템에서 널리 사용되었습니다. 이번에는 grep 명령을 사용하여 특정 파일에서 사용된 일치하는 키워드 앞과 뒤에 행을 표시합니다. 이를 위해 자습서 가이드 전체에서 -A, -B 및 -C 플래그를 사용합니다. 따라서 더 나은 이해를 위해 각 단계를 수행해야 합니다. Ubuntu 20.04 Linux 시스템이 설치되어 있는지 확인하십시오.

먼저 grep 작업을 시작하려면 Linux 명령줄 터미널을 열어야 합니다. 현재 명령줄 터미널이 열린 직후 Ubuntu 시스템의 홈 디렉터리에 있습니다. 따라서 아래 ls 명령을 사용하여 Linux 시스템의 홈 디렉토리에 있는 모든 파일과 폴더를 나열하려고 하면 모두 얻을 수 있습니다. 보시다시피, 일부 텍스트 파일과 일부 폴더가 그 안에 나열되어 있습니다.









예 01: '-A' 및 '-B' 사용

위에 표시된 텍스트 파일에서 이들 중 일부를 살펴보고 grep 명령을 적용해 봅니다. 아래와 같이 인기 있는 cat 명령을 사용하여 먼저 one.txt 텍스트 파일을 열어 보겠습니다.



$고양이원.txt





먼저 아래와 같이 grep 명령을 사용하여 이 텍스트 파일에서 일치하는 특정 단어를 볼 수 있습니다. grep 명령어를 사용하여 one.txt 텍스트 파일에서 we라는 단어를 검색하고 있습니다. 출력은 우리가 포함된 텍스트 파일의 두 줄을 보여줍니다.

$꽉 붙잡음우리 하나.txt



따라서 이 예에서는 일부 텍스트 파일에서 특정 단어 일치 전후의 행을 표시합니다. 따라서 동일한 텍스트 파일 one.txt를 사용하여 아래와 같이 앞에 3줄을 표시하면서 we라는 단어를 일치시켰습니다. 플래그 -B는 Before를 나타냅니다. 파일에는 특정 단어의 줄 앞에 더 많은 줄이 없기 때문에 출력은 특정 단어 줄 앞에 두 줄만 표시합니다. 또한 특정 단어가 포함된 행도 표시합니다.

$꽉 붙잡음-NS우리 하나.txt

이 파일의 we와 같은 키워드를 사용하여 we라는 단어가 있는 줄 뒤에 3줄을 표시해 보겠습니다. 플래그 -A는 After를 표시합니다. 파일에 더 이상 줄이 없기 때문에 출력은 다시 2줄만 표시합니다.

$꽉 붙잡음-에게우리 하나.txt

따라서 일치할 새 키워드를 사용하고 해당 키워드가 있는 줄 앞뒤에 줄이나 행을 표시해 보겠습니다. 그래서 우리는 일치하는 단어 can을 사용했습니다. 이 경우 줄 번호는 동일합니다. 일치하는 단어 뒤의 3줄은 grep 명령을 사용하여 아래에 표시될 수 있습니다.

$꽉 붙잡음-에게수 하나.txt

can 키워드를 사용하여 일치하는 단어의 줄 앞에 출력이 표시되는 것을 볼 수 있습니다. 대조적으로, 일치하는 단어의 줄 앞에 더 이상 줄이 없기 때문에 두 줄만 표시됩니다.

$꽉 붙잡음-NS수 하나.txt

예 02: '-A' 및 '-B' 사용

홈 디렉토리에서 또 다른 텍스트 파일인 two.txt를 가져와서 아래 cat 명령을 사용하여 내용을 표시해 보겠습니다.

$고양이두.txt

grep 명령을 사용하여 파일 two.txt에서 단어 Most 앞에 5줄을 표시해 보겠습니다. 출력은 라인에 특정 단어가 포함되기 전에 5개의 라인을 표시합니다.

$꽉 붙잡음-NS5대부분의 두.txt

grep 명령은 아래에 텍스트 파일 two.txt에서 Most라는 단어 뒤에 5줄을 표시합니다.

$꽉 붙잡음-에게5대부분의 두.txt

검색할 키워드를 변경해 보겠습니다. 이번에는 일치하는 키워드로 를 사용합니다. 아래의 grep 명령을 사용하여 텍스트 파일 two.txt의 단어 앞에 두 줄을 표시하십시오. 출력은 파일에 두 번 나오기 때문에 키워드에 대해 두 줄을 표시합니다. 따라서 출력에는 2줄 이상이 포함됩니다.

$꽉 붙잡음-NS22.txt의

이제 of 키워드가 포함된 줄 뒤에 파일 two.txt의 두 줄을 표시하는 것은 아래 명령을 사용하여 수행할 수 있습니다. 출력은 다시 2줄 이상을 표시합니다.

$꽉 붙잡음-에게22.txt의

예 03: '-C' 사용

또 다른 플래그인 -C는 일치하는 단어 앞과 뒤에 행을 표시하는 데 사용되었습니다. cat 명령을 사용하여 one.txt 파일의 내용을 표시해 보겠습니다.

$고양이원.txt

매칭할 키워드로 사회를 선택합니다. 아래 grep 명령은 사회라는 단어가 포함된 줄 앞 2줄과 뒤 2줄을 표시합니다. 출력은 특정 워드 라인 앞에 한 라인과 그 뒤에 2라인을 보여줍니다.

$꽉 붙잡음-씨2사회 one.txt

아래의 cat 명령어를 이용하여 two.txt 파일의 내용을 살펴보자.

$고양이두.txt

이 그림에서는 시를 키워드로 사용하고 있습니다. 따라서 이를 위해 아래 명령을 실행합니다. 출력은 일치하는 단어 앞 두 줄과 뒤에 두 줄을 표시합니다.

$꽉 붙잡음-씨2시 2.txt

일치시킬 two.txt 파일에서 키워드를 하나 더 사용합시다. 이번에는 자연을 키워드로 소비하고 있습니다. 따라서 파일 two.txt에서 키워드 nature를 갖는 플래그로 -C를 사용하면서 아래 명령을 시도하십시오. 이번에는 출력에 두 줄 이상의 출력이 있습니다. 파일에 자연이라는 단어가 두 번 이상 포함되어 있기 때문에 그 이유가 됩니다. 먼저 나오는 키워드 nature는 앞 두 줄과 뒤에 두 줄이 있습니다. 두 번째가 동일한 키워드와 일치하는 동안 자연은 앞에 두 줄이 있지만 파일의 마지막 줄에 있기 때문에 뒤에는 없습니다.

$꽉 붙잡음-씨2시 2.txt

결론

grep 명령어를 사용하는 동안 특정 단어 앞뒤에 줄을 표시하는 데 성공했습니다.