Linux 명령어 모음 사이트



find

find [경로] [옵션] 파일명

ex) find /home/batt -name app.h
ex) find . -name 'app*'   // ( app* 로 쓰지 말 것)
ex) find . -name "app*"

경로는 recursive 하게 찾는다.


type 별로 찾고 싶을 때는 아래와 같이 사용.

ex) find . -name "xyz" -type f

ex) find . -name "xyz" -type f | xargs ls -al

-type 의 줄 수 있는 타입은 f(일반파일), d(디렉토리), b(블록스페셜파일), l(링크) 입니다.

원하는 것들만 찾아서 recursive하게 지우기

rm -f `find . -name *.txt`


grep : 특정 단어, 문자열, 문장을 포함하는 파일 탐색


grep [옵션] pattern files

ex) grep -r ROSE .

ex) grep Rose *

ex) grep -n -r Rose .     (-n : 줄표시)

grep -R ROSE . (경로)


-c : 파일의 내용 대신 일치하는 줄 수를 출력
-e : pattern 에서 찾을 문자열 명시
-i : 대소문자 구분하지 않음
-l : pattern 을 포함하는 파일의 이름만 출력
-n : 줄 번호와 함께 출력
-r : 서브 디렉토리의 파일까지 모두 출력
-w : pattern 이 전체 단어와 일치하는 줄만 출력
-x : pattern 이 전체 줄과 일치하는 줄만 출력

pattern의 형식

[abc] : a, b or c
[0-9] : 0, 1, … or 9
[^1-3] : 1, 2, 3을 제외한 모든 문자
‘^pattern’ : 패턴이 줄의 처음에 있을 때에만 일치
‘pattern $’ : 패턴이 줄의 마지막이 있을 때에만 일치
‘r
‘patternr>’ : 단어가 패턴으로 끝날 때에만 일치


Posted by 바트정