find
: 디렉토리 계층에서 파일 검색search for files in a directory hierarchy
주어진 위치에서 입력한 이름과 일치하는 파일의 이름을 통해 파일을 검색
- 애스터리스크(
*
)를 이용해 패턴을 지정할 수 있다. (참고 : shell 확장, 인용, 명령어 대치)
hyojin@computer:~/sample/sample2$ ls
newnewfile newnewfile2
hyojin@computer:~/sample/sample2$ find . -name "*new*"
./newnewfile2
./newnewfile
which
: 경로 출력locate a command
환경 변수에 의해 설정된 프로그램이나 명령어의 원래 경로를 출력명령어나 프로그램의 경로를 몰라도 운영체제에서 특정 명령어를 통해 프로그램이나 명령어를 실행시켜줄 수 있는 이유는 경로가 모두 환경 변수에 등록 되어있기 때문이다.
ubuntu@$your_host_name:~$ which find
/usr/bin/find
ubuntu@$your_host_name:~$ which cat
/usr/bin/cat
ubuntu@$your_host_name:~$ which cp
/usr/bin/cp
grep
: find
보다 폭 넓은 검색print lines that match patterns
파일 이름 및 파일 내용을 이용해 찾기
grep
은find
와 비슷한 역할을 하지만find
보다 폭 넓은 검색을 지원하고 정규식을 활용해 검색하는 것도 지원한다.
-rn
-r
: 재귀적으로 검색, 디렉토리 구조 내의 모든 파일에서 검색이 이루어진다. -n
: 라인 번호 출력을 활성화, grep
일치하는 패턴을 찾은 각 라인의 시작 부분에 해당 라인 번호를 함께 표시한다. ubuntu@$your_host_name:~$ grep -rn "line"
sample/line2.txt:1:line1
sample/line2.txt:2:line2
sample/find_manual.txt:23: The -H, -L and -P options control the treatment of symbolic links. Command-line arguments
sample/find_manual.txt:55: -H Do not follow symbolic links, except while processing the command line arguments.
sample/find_manual.txt:58: behaviour is when a file specified on the command line is a symbolic link, and the
sample/find_manual.txt:62: be examined. If -H is in effect and one of the paths specified on the command line
sample/find_manual.txt:67: pearing on the command line takes effect. Since it is the default, the -P option should be
...
각 라인의 끝이 tion으로 끝나는 내용이 들어있는 파일을 정규식을 통해 찾기
ubuntu@$your_host_name:~$ grep -rn "[a-zA-Z]\+tion$" .
(출력 결과 생략)