본문 바로가기
비전공자 IT 이야기/Linux 쉘 스크립트(Shell script)

Linux 쉘 스크립트 파일안 내용 검색 하기 grep

by 롹멜론 2022. 5. 5.

$ grep [OPTION] [PATTERN] [FILE]

 

하위폴더 csv에 아래처럼 생성하자

csv.csv

test1
test?
test3
test?
test5

하위 sql폴더에 아래처럼 생성하자

sql1.sql                                                                     sql2.sql

test*
test2
test3
test*
test5
test1
test2
test3
test*
test5

 

grep을 이용해 [?], [*]를 검색해보자.

 

grepfile.sh

#!/bin/sh

CSVFILE=/c/users/Jack/Documents/github/codingeveryday/bash/csv/csv.csv

if [ ! -f "$CSVFILE" ]
then
	echo "no file"
fi

echo "#######grep ? CSVFILE#######"
grep ? "$CSVFILE"
echo "#######grep -n ? CSVFILE#######"
grep -n ? "$CSVFILE"
echo "#######grep -Hn ? CSVFILE#######"
grep -Hn ? "$CSVFILE"

echo "#######grep -rn \* sql#######"
grep -rn \* sql

grep 옵션

-n 라인번호와 함께 출력

-H 파일이름(위치도) 함께 출력

-r 재귀적으로 하위 디렉토리도 검사

 

 

 

---

아래는 아직 공부중 확인중, 

grep -q ? * && echo '? has found' || echo 'clean'

-q 검색결과 출력하지 않음

 

&& 앞의 명령어가 성공했을 때 다음 명령어가 실행

|| or의 의미로, 

 

명령어의 반환값

 

 

댓글