리눅스에서 파일 내용을 검색하려면 어떻게 해야 할까?
파일 전부를 내려받아서 Eclipse 나 Total Commander 를 이용하여 검색한다는 것도 매우 불편한 짓이다.
리눅스 자체 명령어를 이용하여 파일 내용을 검색할 수가 있다.
먼저, 검색하고자 하는 디렉토리로 이동한다. 하위폴더를 포함하여 전체를 다 찾을 수 있다.
grep : 파일 내에서 또는 입력값에서부터 특정 패턴을 검색한다.
- v : 일치되는 내용이 없는 라인을 표시한다.
- c : 일치되는 내용이 있는 행의 개수를 표시한다.
- l : 일치되는 내용이 있는 파일의 이름만을 표시한다.
- h : 일치되는 내용을 찾은 파일의 이름을 표시하지 않는다.
- n : 일치되는 내용이 있는 행은 행번호와 함께 표시된다.
# grep -r "찾을 문자열" ./*
검색할 디렉토리에서 찾을 내용이 포함된 모든 파일명과 해당 검색어가 어떤 라인에 있는지 찾을 때
# grep -rn "찾을문자열"
# grep -rn letterMasking
파이프프로그램의 실행결과를 다른 프로그램의 입력으로 연결한다.
이렇게 둘 이상의 명령을 함께 사용하고, 한 명령어의 출력결과를 다른 명령어의 입력으로 전환하는 것을 파이프라 한다.
또다른 방법은
find [경로] -name "파일명" | xargs grep "찾을 문자열"
# find ./ -name "*.php" | xargs grep "getKRtoUTF"
로 찾을 수 있다.
검색어로 사용된 문자열 색을 달리 표시하고 싶다면
# find ./ -name "*.php" | xargs grep --color=auto "getKRtoUTF"
찾을 문자열이 포함된 파일명만 보고 싶다면
# find ./ -name "*.php" | xargs grep -l "getKRtoUTF"
내가 가장 보기 좋게 원하는 것은 파일명만 보이도록 찾는 것이다.
리다이렉션
리다이렉션을 이용하면 명령의 출력을 변경할 수 있다.기본적으로 명령어의 결과는 모니터에 출력된다. 하지만 리다이렉션을 이용하여 파일에 기록할 수 있다.명령어 > 파일 : 파일이 없다면 생성하고, 있다면 기존의 내용을 지운다.명령어 >> 파일 : 파일이 없다면 생성하고, 있다면 기존의 내용에 추가한다.명령어 < 파일 : 파일에서 표준입력 받는다.
'리눅스' 카테고리의 다른 글
[보안] 리눅스 SSH 보안 설정 (일반유저의 ssh 접속 제한 설정) (0) | 2015.04.08 |
---|---|
[보안] 리눅스 root 권한으로 SSH 로그인 불가 처리 (0) | 2015.04.08 |
포트 상태 점검 명령어 (0) | 2015.02.22 |
특정 디렉토리 읽기쓰기 권한 부여 ACL (0) | 2014.12.28 |
리눅스 CentOS 6.X 방화벽 설정 (0) | 2014.12.26 |