웹사이트 검색

Linux에서 "Explain Shell" 스크립트를 사용하여 쉽게 쉘 명령 이해


Linux 플랫폼에서 작업하는 동안 우리 모두는 어느 시점에서 쉘 명령에 대한 도움이 필요합니다. 맨 페이지, whatis 명령과 같은 내장 도움말이 도움이 되지만 맨 페이지 출력이 너무 길고 Linux에 대한 경험이 없으면 얻기가 매우 어렵습니다. 방대한 매뉴얼 페이지의 도움. whatis 명령의 출력은 초보자에게 충분하지 않은 한 줄 이상인 경우가 거의 없습니다.

"Linux 사용자를 위한 명령줄 치트 시트"에서 다룬 '치트'와 같은 타사 애플리케이션이 있습니다. Cheat는 컴퓨터가 인터넷에 연결되지 않은 경우에도 쉘 명령에 대한 도움말을 표시하는 매우 좋은 응용 프로그램이지만 미리 정의된 명령에 대해서만 도움말을 표시합니다.

Jackson이 작성한 작은 코드는 bash 셸 내의 셸 명령을 매우 효과적으로 설명하고 타사 패키지를 설치할 필요가 없다는 점을 추측할 수 있습니다. 그는 이 코드 조각이 포함된 파일의 이름을 'explain.sh'로 지정했습니다.

explain 유틸리티의 특징

  1. 쉬운 코드 임베딩.
  2. 타사 유틸리티를 설치할 필요가 없습니다.
  3. 설명하는 동안 충분한 정보만 출력합니다.
  4. 작동하려면 인터넷 연결이 필요합니다.
  5. 순수한 명령줄 유틸리티.
  6. Bash 쉘의 대부분의 쉘 명령을 설명할 수 있습니다.
  7. 루트 계정 참여가 필요하지 않습니다.
전제 조건

유일한 요구 사항은 'curl' 패키지입니다. 오늘날 대부분의 최신 Linux 배포판에는 컬 패키지가 사전 설치되어 있습니다. 그렇지 않은 경우 아래와 같이 패키지 관리자를 사용하여 설치할 수 있습니다.

apt-get install curl 	[On Debian systems]
yum install curl 		[On CentOS systems]

Linux에 explain.sh 유틸리티 설치

~/.bashrc 파일에 아래 코드를 그대로 삽입해야 합니다. 각 사용자와 각 .bashrc 파일에 대해 코드를 삽입해야 합니다. 루트 사용자의 .bashrc가 아닌 사용자의 .bashrc 파일에만 코드를 삽입하는 것이 좋습니다.

해시 (#)로 시작하는 첫 번째 코드 줄은 선택 사항이며 .bashrc의 나머지 코드를 구별하기 위해 추가되었습니다.

# explain.sh는 코드의 시작을 표시하며 이 파일 하단의 .bashrc 파일에 삽입됩니다.


explain.sh begins
explain () {
  if [ "$#" -eq 0 ]; then
    while read  -p "Command: " cmd; do
      curl -Gs "https://www.mankier.com/api/explain/?cols="$(tput cols) --data-urlencode "q=$cmd"
    done
    echo "Bye!"
  elif [ "$#" -eq 1 ]; then
    curl -Gs "https://www.mankier.com/api/explain/?cols="$(tput cols) --data-urlencode "q=$1"
  else
    echo "Usage"
    echo "explain                  interactive mode."
    echo "explain 'cmd -o | ...'   one quoted command to explain it."
  fi
}

explain.sh 유틸리티 작업

코드를 삽입하고 저장한 후 변경 사항을 적용하려면 현재 세션에서 로그아웃하고 다시 로그인해야 합니다. 설명이 필요한 입력 명령과 플래그를 mankier 서버에 전송한 다음 필요한 정보만 Linux 명령에 인쇄하는 'curl' 명령에 의해 모든 것이 처리됩니다. -선. 이 유틸리티를 사용하려면 말할 것도 없이 항상 인터넷에 연결되어 있어야 합니다.

explain.sh 스크립트를 사용하여 의미를 모르는 명령의 몇 가지 예를 테스트해 보겠습니다.

1. 'du -h'가 무엇을 하는지 잊어버렸습니다. 내가 해야 할 일은 다음과 같습니다.

explain 'du -h'

2. 'tar -zxvf'의 기능을 잊어버린 경우 간단히 다음을 수행할 수 있습니다.

explain 'tar -zxvf'

3. 제 친구 중 한 명이 'whatis'와 'whereis' 명령의 사용법을 자주 혼동해서 그에게 조언해 주었습니다.

터미널에 explain 명령을 입력하면 대화형 모드로 전환됩니다.

explain

그런 다음 명령을 차례로 입력하여 다음과 같이 한 창에서 수행되는 작업을 확인합니다.

Command: whatis
Command: whereis

대화형 모드를 종료하려면 Ctrl + c만 누르면 됩니다.

4. 파이프라인으로 연결된 두 개 이상의 명령에 대한 설명을 요청할 수 있습니다.

explain 'ls -l | grep -i Desktop'

마찬가지로 쉘에 쉘 명령을 설명하도록 요청할 수 있습니다. 필요한 것은 작동하는 인터넷 연결뿐입니다. 출력은 서버에서 필요한 설명을 기반으로 생성되므로 출력 결과를 사용자 정의할 수 없습니다.

나에게 이 유틸리티는 정말 도움이 되었으며 내 .bashrc에 추가된 것을 영광으로 생각합니다. 이 프로젝트에 대한 당신의 생각을 알려주십시오. 그것이 당신에게 어떻게 유용할 수 있나요? 설명이 만족스럽나요?

아래 의견에 귀중한 피드백을 제공해주십시오. 우리를 좋아하고 공유하고 우리가 퍼질 수 있도록 도와주세요.