리눅스 명령어 정리(1)- grep, less, head, tail
Ubuntu 14.04 LTS 환경을 기준으로 작성되었습니다.
grep
문자열 검색 명령어
옵션
- -r: 디렉토리 내의 모든 디렉토리, 파일까지 검색하도록 지정
- -E: 패턴을 정규표현식으로 확장
- -i: 대문자, 소문자 차이 무시
- -v: 검색할 문자열이 포함되지 않은 줄만 출력
- -n: 라인 수 출력
예시
$ grep -E "^abc" file.txt
: file.txt
에서 "abc"로 시작하는 모든 줄 출력
$ grep -r "abc" /home/jupiny/directory/
: /home/jupiny/directory/
경로에서 "abc"가 포함된 모든 파일 출력(디렉토리 내의 모든 디렉토리, 파일 포함)
$ grep "abc" file.txt | grep -v "def"
: file.txt
에서 "abc"가 포함되고 "def"는 포함되지 않은 모든 줄 출력
less
스크롤할 수 있게 출력하는 명령어
예시
$ less test.txt
: test.txt
의 내용을 스크롤할 수 있게 출력
ps -aux | less
: 현재 실행되고 있는 프로세스 목록을 스크롤할 수 있게 출력
head
파일 내용의 앞 부분만 출력하는 명령어
옵션
- -n: 출력하는 줄 수(기본적으로 10줄)
예시
$ cat test.txt | head -n 3
: test.txt
의 앞에서 3줄만 출력
$ cat test.txt | head -n -5
: test.txt
의 마지막 5줄을 제외한 모든 줄을 출력
tail
파일 내용의 끝 부분만 출력하는 명령어
옵션
- -F: 파일 변경을 감시해서 내용이 추가될 때마다 그 부분을 실시간으로 출력
- -n: 출력하는 줄 수(기본적으로 10줄)
예시
$ tail -F access.log | grep "abc"
: access.log
에 추가된 줄 중 "abc"가 포함된 줄만 실시간으로 출력
$ cat test.txt | tail -n 5
: test.txt
의 끝에서 5줄만 출력
$ cat test.txt | tail -n +6
: test.txt
의 6번째 줄부터 출력