텍스트 파일 관련 명령어 (head, tail, more, less, grep)

2023. 10. 21. 19:02리눅스

728x90
반응형

head

텍스트 파일의 첫 부분을 보여주는 명령으로 옵션 없이 사용하면 기본 10줄을 출력한다.

 

$ head -n 5 *.c

파일 의 앞에서부터 지정된 수만큼 출력한다. 5줄을 입력하면 '-n 5'를 입력해야 하는데 , '-5라고 줄여서 사용가능'

 

$ head -3 *.c

현재 디렉터리의 .c 로 끝나는 모든 파일의 처음 3줄씩을 보여준다 'head -n 3 *.c' 와 같다. 

 

$ head -q *.txt

현재 디렉터리의 *.txt로 끝나는 모든 파일의 처음 10줄씩 보여주는데 파일 이름은 출력하지 않는다.

 

tail

텍스트 파일의 끝부분을 보여주는 명령으로 옵션 없이 사용하면 기본 10줄을 출력한다.

 

$ tail -n 5 *.c

파일 의 앞에서부터 지정된 수만큼 출력한다. 5줄을 입력하면 '-n 5'를 입력해야 하는데 , '-5라고 줄여서 사용가능'

 

more

텍스트 파일의 내용이 긴 경우에 화면(page) 단위로 출력해주는 명령이다.

 

space 또는 z

다음 페이지를 보여준다.

 

 enter

한 줄씩 보여준다.

 

q또는Q

more 명령을 종료한다.

 

less

 

more 명령과 유사하게  한 화면 단위로 출력해주는 명령으로 GNU에서 more명령의 성능을 강화한 뒤에 반대의 뜻을 붙여서 만들었습니다. 특히, 커서키를 사용해서 상하좌우의 이동이 가능하고, vi에서 사용하는 다양한 명령들도 사용할 수 있다.

 

grep

텍스트 파일에서 특정 형태를 보이는 줄을 찾아서 출력해주는 명령이다.

 

$ grep linux * 

현재 디렉터리의 모든 파일에서 'linux' 라는 문자열이 들어가 있는 줄을 찾아 출력한다.

 

$ grep -c linux * 

현재 디렉터리의 모든 파일에서 'linux' 라는 문자열이 들어가 있는 줄을 몇 개씩 가졌는지를 출력한다.

 

$ grep "[0-9]" readme

redme 파일에서 숫자가 존재하는 모든 줄을 보여준다.

 

$ grep -E 'dongwok|root' /etc/passwd

dongwok 이라는 문자열이 있거나 'root'라는 문자열이 있는 줄을 출력한다. 

 

$ grep -v ^# /etc/vsftpd/vsftpd.conf

/etc/vsftpd/vsftpd.conf 파일에서 '#' 으로 끝나지 않는 줄만 출력해준다.