[RHEL6] 명령어 찾기 명령어(apropos, whatis, whereis, which)
본문 바로가기
IT 이야기/Linux 명령어

[RHEL6] 명령어 찾기 명령어(apropos, whatis, whereis, which)

by 찬찬이 아빠 2020. 1. 23.
반응형
  1. apropos(관련 명령 찾기)

 1) 경로 : /usr/bin/apropos

 2) 요약 : 검색어와 관련있는 명령어를 설명과 함께 출력

 3) 사용 방법 : apropos [검색어]

 4) 옵션

 - 검색어 : 검색하고 싶은 문자열

 

 5) 추가 설명

apropos는 검색어와 관련 있는 명령어를 whatis DB에서 검색하여 간단한 설명과 함께 출력합니다. whatis는 검색어가 whatis DB의 명령어 리스트와 이름이 동일한 경우만을 출력하지만, apropos는 검색어 일부가 명렁어나 설명에 포함된 경우까지 모두 출력합니다. 예를 들어 리눅스에서는 GIMP 등의 그래픽 툴을 사용하지 않고도 비트맵 파일을 jpeg 파일로 변경할 수 있습니다. 그런데 그 명령어가 생각나지 않을 경우 다음과 같이 입력합니다.

 

# apropos jpeg
cjpeg        (1) - compress an image file to a JPEG file
djpeg        (1) - decompress a JPEG file to an image file
gd           (rpm) - A graphic library for quick creation of PNG or JPEG images
jng          (5) - JPEG Network Graphics (JNG) sub-format
jpeg2ktopam  (1) - convert JPEG-2000 code stream to PAM/PNM
jpegicc      (1) - little cms ICC profile applier for JPEG
--- 생략 ---

 

apropos 명령어에 검색어로 jpeg를 사용하면 명령어나 요약 설명에 jpeg라는 단어가 들어있는 모든 명령어를 출력합니다. 우리가 찾는 이미지를 jpeg 파일로 만들어주는 명령어는 가장 위에 있는 cjpeg임을 알 수 있습니다. 또한 반대로 jpeg 파일을 비트맵이나 그 외의 파일로 만드는 djpeg라는 명령어가 있다는 것도 알 수 있습니다.

 

 

 

  2. whatis(명령 검색)

 1) 경로 : /usr/bin/whatis

 2) 요약 : 키워드에 해당하는 명령어를 whatis DB에서 검색

 3) 사용 방법 : whatis 키워드

 4) 추가 설명

apropos는 명령어에 대한 설명을 whatis DB 파일에서 검색하여 출력합니다. whatis 명령어는 whatis DB에서 명령어만 검색하지만 apropos 명령어는 명령어뿐만 아니라 명령어에 대한 설명도 검색하여 출력합니다.

 

아래에서 실행한 apropos 명령어는 man -k 명령어와 같습니다.

$ appropos who
at.allow (5)     - determine who can submit jobs via at or batch
at.deny (5)      - determine who can submit jobs via at or batch
from (1)         - print names of those who have sent mail
w (1)            - Show who is logged on and what they are doing.
w.procps (1)     - Show who is logged on and what they are doing.
who (1)          - Show who is logged on
whoami (1)       - print effective userid

 

아래는 whatis 명령어로 실행한 예제입니다.

$ whatis who
who (1)       - Show who is logged on

 

 

 

  3. whereis(명령어 경로 찾기)

 1) 경로 : /usr/bin/whereis

 2) 요약 : 명령어를 입력 받아 해당 명령어의 절대 경로를 찾아줌

 3) 사용 방법 : whreris [옵션] 파일명

 4) 옵션

 -b : 바이너리 파일만 찾음

 -m : 매뉴얼 섹션만 찾음

 -s : 소스만 찾음

 -u : 일반적이지 않은 항목을 찾음. 이 옵션은 특정 파일을 제외하는데 사용

 -B : 바이너리 파일의 위치를 제한

 -M : 매뉴얼 페이지의 위치를 제한

 -S : 원본 파일의 위치를 제한

 -f : -B, -M -S 옵션에 디렉터리를 지정한 다음에 이 옵션에서 파일명을 지정

 

 5) 추가 설명

whereis 명령어는 실행 파일의 위치와 함께 소스, 설정파일, 매뉴얼 페이지를 검색하여 출력합니다. whereis 명령어는 locate(또는 mlocate) 명령어보다 검색 속도가 느리고, 검색 범위에 제한이 있으며, 결과를 단순한 정보로 출력합니다.

 

아래와 같이 whereis는 $PATH 환경 변수에서 설정된 실행 파일 경로뿐만 아니라 매뉴얼 페이지의 전체 경로를 출력합니다.

# whereis rm
rm: /bin/rm /usr/share/man/man1/rm.1.gz

 

which 명령은 $PATH 내의 실행 파일의 위치를 알려줍니다. 아래는 which 명령어로 확인한 결과 rm 명령은 /bin/rm에 있음을 알 수 있습니다.

# which rm
alias rm='rm -i'
/bin/rm

 

 

 

  4. which(파일 경로 검색)

 1) 경로 : /usr/bin/which

 2) 요약 : PATH 환경 변수 내의 파일 위치를 출력

 3) 사용 방법 : which [옵션] [--] [명령어][...]

 4) 옵션

 -a, --all : 모든 내용을 출력

 -i, --read-alias : 알리아스 설정 환경을 출력

 --skip-alias : 알리아스 설정을 무시

 --skip-dot : 점(.)으로 시작하는 디렉터리를 제외

 --skip-tilde : 틸드(~)로 시작하는 디렉터리($HOME 디렉터리)를 제외

 --show-dot : 점(.)으로 시작하는 디렉터리를 포함

 --show-tilde : 틸드(~)로 시작하는 디렉터리를 포함

 -v, -V, --version : 버전 정보를 출력

 

 5) 추가 설명

PATH 환경 변수에 있는 디렉터리를 모두 검색하고 찾고자 하는 명령어의 전체 위치 경로를 출력합니다.

 

아래와 같이 which는 알리아스 설정이 되어 있고, /usr/bin/which에 위치합니다.

# which which
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' /usr/bin/which
반응형

댓글