‘더 적은’이 파일 탐색을 위한 ‘더 많은’보다 빠른 이유를 배우세요

More는 콘솔에서 파일 내용을 표시하는 데 사용되는 *nix 명령줄입니다. more 명령의 기본 사용법은 아래와 같이 파일에 대해 명령을 실행하는 것입니다:

Read Also: 예제와 함께 ‘cat’ 및 ‘tac’ 명령의 차이 학습하기

리눅스 ‘more’ 명령어 배우기

# more /var/log/auth.log
View Contents of auth.log File
Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session closed for user root
Apr 12 11:55:01 tecmint CRON[7159]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session closed for user root
Apr 12 11:55:02 tecmint CRON[7159]: pam_unix(cron:session): session closed for user root
Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session closed for user root
Apr 12 12:05:01 tecmint CRON[7435]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session closed for user root
Apr 12 12:05:02 tecmint CRON[7435]: pam_unix(cron:session): session closed for user root
Apr 12 12:09:01 tecmint CRON[7542]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:09:01 tecmint CRON[7542]: pam_unix(cron:session): session closed for user root
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session closed for user root
....

more 명령어를 다른 명령어와 함께 (pipe) 사용하는 또 다른 방법은 아래 예제에서 설명된 대로 cat 명령어와 같은 명령어와 함께 사용하는 것입니다:

# cat /var/log/auth.log | more
View and Navigate Contents of File

파일을 한 줄씩 이동하려면 Enter 키를 누르거나 한 번에 한 페이지씩 이동하려면 현재 터미널 화면 크기가 페이지입니다. 명령을 종료하려면 q 키를 누르십시오.

A useful option of more command is the -number switch which allows you to set the number of line a page should contain. As an example display the auth.log file as a page of 10 lines:

# more -10 /var/log/auth.log
Show Only First 10 Lines of File

또한 아래 예제와 같이 +숫자 옵션을 사용하여 특정 줄 번호부터 페이지를 표시할 수 있습니다:

# more +14 /var/log/auth.log
Show Only First 14 Lines of auth.log File
Apr 12 12:09:01 tecmint CRON[7542]: pam_unix(cron:session): session closed for user root
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session closed for user root
Apr 12 12:16:01 tecmint mate-screensaver-dialog: gkr-pam: unlocked login keyring
Apr 12 12:17:01 tecmint CRON[7793]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:17:01 tecmint CRON[7793]: pam_unix(cron:session): session closed for user root
Apr 12 12:20:01 tecmint CRON[7905]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:20:01 tecmint CRON[7905]: pam_unix(cron:session): session closed for user root
Apr 12 12:25:01 tecmint CRON[8107]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:25:01 tecmint CRON[8108]: pam_unix(cron:session): session opened for user root by (

리눅스 ‘less’ 명령어 배우기

more와 비슷하게, less 명령어는 파일 내용을 보고 파일을 탐색할 수 있습니다. moreless의 주된 차이점은 less 명령어가 전체 파일을 한 번에 로드하지 않으며 페이지 위로/아래로 키를 사용하여 파일을 탐색할 수 있다는 것입니다.

단독 명령어로 사용되거나 다양한 Linux 명령어와 함께 사용되어 화면 출력을 좁히고 결과를 스크롤하여 볼 수 있도록 하는 명령어입니다.

# less /var/log/auth.log
# ls /etc | less

파일을 한 줄씩 이동하면서 탐색하려면 Enter 키를 누르세요. 페이지 이동은 스페이스바 키로 처리할 수 있습니다. 페이지 크기는 현재 터미널 화면 크기로 나타납니다. 명령을 종료하려면 q 키를 입력하세요.

A useful feature of less command is the use of /word-to-seach option. For instance you can search and match all sshd messages from a log file by interactively specifying the /sshd string.

View File Content Using less Command

특정 라인 번호에서 파일을 표시하려면 다음 구문을 사용하세요:

# less +5 /var/log/auth.log

less 명령을 사용하여 모든 라인 번호를 추적해야 하는 경우 -N 옵션을 사용하세요.

# less -N /var/log/daemon.log
Show Number for Every Line in File
      1 Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session opened for user root by (uid=0)
      2 Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session closed for user root
      3 Apr 12 11:55:01 tecmint CRON[7159]: pam_unix(cron:session): session opened for user root by (uid=0)
      4 Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session opened for user root by (uid=0)
      5 Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session closed for user root
      6 Apr 12 11:55:02 tecmint CRON[7159]: pam_unix(cron:session): session closed for user root
      7 Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session opened for user root by (uid=0)
      8 Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session closed for user root
      9 Apr 12 12:05:01 tecmint CRON[7435]: pam_unix(cron:session): session opened for user root by (uid=0)
     10 Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session opened for user root by (uid=0)
     11 Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session closed for user root

기본적으로 less 명령을 종료하는 유일한 방법은 q 키를 누르는 것입니다. 이 동작을 변경하여 파일의 끝에 도달하면 자동으로 종료하려면 -e 또는 -E 옵션을 사용하세요:

# less -e /var/log/auth.log
# less -E /var/log/auth.log

패턴의 첫 번째 발생 지점에서 파일을 열려면 다음 구문을 사용하세요:

# less +/sshd /var/log/auth.log
Show Given Matching String in File
Apr 12 16:19:39 tecmint sshd[16666]: Accepted password for tecmint from 192.168.0.15 port 41634 ssh2
Apr 12 16:19:39 tecmint sshd[16666]: pam_unix(sshd:session): session opened for user tecmint by (uid=0)
Apr 12 16:19:39 tecmint systemd-logind[954]: New session 1 of user tecmint.
Apr 12 16:19:48 tecmint sshd[16728]: Received disconnect from 192.168.0.15: 11: disconnected by user
Apr 12 16:19:48 tecmint sshd[16666]: pam_unix(sshd:session): session closed for user tecmint
Apr 12 16:20:01 tecmint CRON[16799]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 16:20:02 tecmint CRON[16799]: pam_unix(cron:session): session closed for user root
Apr 12 16:25:01 tecmint CRON[17026]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 16:25:01 tecmint CRON[17025]: pam_unix(cron:session): session opened for user root by (uid=0)

위 명령은 less에게 auth.log 파일을 sshd 문자열의 첫 일치 지점에서 열도록 지시합니다.

less 명령에서 열린 파일의 내용을 자동으로 추가하려면 Shift+f 키 조합을 사용하거나 다음 구문으로 less를 실행하세요.

# less +F /var/log/syslog

이렇게 하면 less가 대화식 모드(실시간)로 실행되어 새 내용을 표시하면서 파일에 쓰기를 기다리는 동안 새 데이터를 표시합니다. 이 동작은 tail -f 명령어와 유사합니다.

패턴과 결합하여 Shift+f 키 스트로크로 키워드를 일치시키면서 로그 파일을 대화식으로 볼 수 있습니다. 라이브 모드를 종료하려면 Ctrl+c 키를 누르세요.

# less +/CRON /var/log/syslog

또는 을 사용할지 결정하든 개인적인 선택이지만, 기능이 더 많습니다.

관련 기사: head, tail 및 cat 명령을 사용하여 파일 효율적으로 관리하기

Source:
https://www.tecmint.com/linux-more-command-and-less-command-examples/