본문 바로가기
카테고리 없음

리눅스 스크립트 cat -n 을 사용하여 특정 라인 검색

by 감성김씨 2023. 7. 18.
728x90
반응형

 

1. 리눅스  스크립

리눅스 스크립트에서 cat -n 옵션을 사용해서 grep 으로 특정 단어를 잡고,

grep 결과에 라인 숫자를 expr을 사용해서 특정 라인 숫자에 + 연산자를 사용해서

특정 라인을 잡는 스크립트

 

 

 

#!/bin/bash

#파일경로와검색할단어를지정합니다.

file_path="파일_경로"
search_word="검색_단어"

#cat명령어를사용하여파일의각줄에라인번호를부여한후,grep으로특정단어를검색합니다.
#검색결과에는라인번호와해당줄의내용이함께표시됩니다.

search_result=$(cat-n"$file_path"|grep"$search_word")

#검색결과가있는지확인합니다.
if[[-n$search_result]];then
      #검색결과를한줄씩처리합니다.
       whileIFS=read-rline;do
      #각줄에서라인번호와내용을추출합니다.
              line_number=$(echo"$line"|awk'{print$1}')
              line_content=$(echo"$line"|awk'{$1="";print$0}')

          #expr을사용하여특정라인번호에+연산자를적용하여해당라인을출력합니다.
             target_line=$(expr$line_number+0)#0을더해숫자형식을유지합니다.
             cat-n"$file_path"|sed-n"${target_line}p"
             done<<<"$search_result"
             else
                 echo"검색결과를찾을수없습니다."
 fi

 

 

 

 

728x90
반응형