리스토리의 IT's/OS

Linux에서 명령어 정보를 찾는 3가지 : whereis, whatis, which

리스토리™ 2023. 2. 12. 11:04
반응형

리눅스 파일 시스템을 다루면서 특정 명령에 대한 정보를 알아보고자 할 때 whereis, whatis, which 명령이 도움
이 될 수 있다. 이들은 명령에 대해 서로 다른 관점의 정보를 제공한다.

 

which

which 명령은 3가지 중 가장 단순한 명령이다. which를 사용해 리눅스 명령에 대해 질의하면 검색 경로에서 지
정된 이름으로 된 실행 파일을 찾는다. 시스템에서 사용할 수 있는 명령일 수도 있고 스크립트일 수도 있다. 파일
에 대한 쓰기 권한만 있으면 바로 사용할 수 있다. 예를 들면 다음과 같다.

$ which date
/usr/bin/date
$ which init
/usr/sbin/init
$ which loop
~/bin/loop

which 명령은 파일의 위치를 보여주는 기능만 한다. 또한 일치하는 파일을 찾으면 바로 검색을 중단한다. 지정된
이름의 실행 파일이 포함된 검색 경로상의 첫 위치가 결과로 표시된다.

일반적으로 which 명령은 명령의 이름을 입력할 때 어느 실행 파일이 실행되는지 알 수 있도록 명령의 위치를 표
시하는 데 사용한다. 실행하고자 하는 명령이 아닌 다른 명령이 실행되지 않도록 하는 것이 중요할 때가 종종 있
다. 잘 작성된 검색 경로는 정확히 원하는 명령을 실행하는 데 도움이 된다. 이는 일반적으로 /usr/bin, /usr/sbin, /
usr/local/bin과 같은 시스템 디렉터리가 개인 디렉터리 및 개인 bin 디렉터리보다 선행한다는 것을 의미한다.

 

whereis

whereis 명령은 파일을 찾는 접근 방식 측면에서 더 자유롭다. 사용자가 찾는 파일 및 관련 명령을 찾아준다. 또
한 이 명령은 바이너리, 소스, 매뉴얼 페이지 파일에서만 명령을 찾는다. 파일은 실행 파일이 아니어도 된다. 사용
자의 검색 경로를 따르지 않고 특정 위치에서만 찾는다. 다음 예에서 볼 수 있듯이 bin 디렉터리도 그중 하나다.

$ whereis date
date: /usr/bin/date /home/shs/bin/date /usr/share/man/man1/date.1.gz
/usr/share/man/man1p/date.1p.gz


이 예에서 whereis 출력에 표시된 마지막 2개 파일은 gzip으로 압축된 매뉴얼 페이지로, man 명령을 사용해 읽
을 때 압축이 해제된다.

 

whatis

whatis 명령은 파일을 찾지 않고, 리눅스 명령에 대한 간략한 설명을 제공한다. 관련 man 페이지에서 정보를 가
져온다. 예를 들면 다음과 같다.

$ whatis date
date (1) - print or set the system date and time
date (1p) - write the date and time


여기서 whatis 명령은 date 명령에 대한 2가지 매우 간단한 설명을 제공한다. 첫 번째 설명은 주 man 페이지에
서, 두 번째 설명은 1p 폴더에 저장된 man 페이지에서 가져온다(/usr/share/man/man1p/date.1p.gz). man 페이
지를 보려면 다음과 같은 명령을 사용하면 된다.

$ man date
$ man 1p date


관련 man 페이지의 NAME 섹션에서 간략한 설명이 포함된 것을 볼 수 있다.

$ man date | head -4
DATE(1) User Commands DATE(1)


NAME
date - print or set the system date and time
$ man 1p date | head -10
DATE(1P) POSIX P rogrammer's Manual D ATE(1P)


PROLOG
This manual pag e is part of the POSIX Programmer's Manual. The Linux
implementation o f this interface may diff er (consult the corresponding
Linux manual pag e for details of Linux behavior), or the interface may
not b e implemented on Linux.


NAME
date — write the date and time

whereis, whatis, which 명령은 정확히 의도한 명령을 실행하고 명령 및 관련 파일을 찾는 데 도움이 되며 명령의
기능에 대한 매우 간단한 설명을 제공한다.

 

[참고 ] IDG 기초부터 다시 시작하는 리눅스 기본 활용편

 


이글이 도움이 되셨으면 아래↓ [공감] 버튼과 우측상단↗의 [구독하기] 클릭 부탁드려요 ^^

 

반응형