Repolode
koalaman

koalaman/shellcheck

bash와 sh 셸 스크립트에서 버그, 이식성 문제, 잘못된 습관을 찾아내는 정적 분석 도구입니다.

스타
40,295
포크
1,973
열린 이슈
1,090
마지막 커밋
어제

어떤 프로젝트인가요?

ShellCheck는 셸 스크립트를 분석해 구문 오류, 의미상 문제, 스크립트가 잘못 동작하거나 나중에 실패하게 만들 수 있는 미묘한 함정에 관한 경고와 개선 제안을 제공합니다. bash와 sh 스크립트를 대상으로 하며, 따옴표로 감싸지 않은 변수, 잘못 사용한 테스트 연산자, 깨진 find 또는 grep 패턴, 무시된 종료 코드 등의 문제를 찾아내고 각 경고에 설명을 덧붙입니다.

shellcheck.net에서 웹으로 사용하거나 CLI에서 실행할 수 있으며, Vim, Emacs, Sublime, VS Code, Pulsar 같은 에디터에서도 사용할 수 있습니다. 출력 형식은 일반 텍스트, JSON, CheckStyle XML, GCC 스타일 메시지를 지원하며, 경고가 발생하면 빌드나 테스트 실행을 실패 처리하도록 종료 코드를 활용할 수 있습니다.

ShellCheck는 Haskell로 작성되었으며 GPL-3.0 라이선스로 배포됩니다. 대부분의 시스템 패키지 관리자, Docker, conda를 통해 설치할 수 있고 Linux, macOS, Windows용 사전 컴파일 바이너리도 제공됩니다.

핵심 기능

  • 01bash와 sh 스크립트의 따옴표 오류, 잘못된 조건문, 잘못 사용한 명령을 찾아냅니다.
  • 02checkbashisms와 유사하게 스크립트의 shebang을 기준으로 이식성 문제를 표시합니다.
  • 03각 경고에 자세한 위키 페이지 링크와 설명을 제공합니다.
  • 04다양한 에디터 및 CI 서비스와 연동됩니다.
  • 05텍스트, JSON, CheckStyle XML 또는 GCC 호환 메시지 형식으로 출력합니다.

활용 사례

  • CI 파이프라인에서 셸 스크립트를 린트해 새로운 경고가 발생하면 빌드를 실패 처리합니다.
  • 스크립트를 실행하기 전에 따옴표로 감싸지 않은 변수와 위험한 rm 또는 find 패턴을 찾아냅니다.
  • /bin/sh용으로 작성한 스크립트가 bash 전용 기능에 의존하지 않는지 확인합니다.
  • 에디터에서 셸 스크립트를 편집하는 동안 바로 피드백을 받습니다.

빠른 시작

  1. 1

    Homebrew로 ShellCheck 설치하기

    brew install shellcheck
  2. 2

    스크립트에 ShellCheck 실행하기

    shellcheck yourscript

사용 전 알아둘 점

  • 카피레프트 라이선스인 GPL-3.0에 따라 라이선스가 부여됩니다.
  • 소스에서 컴파일하려면 약 2GB의 RAM이 필요합니다.

포함된 컬렉션

토픽

자주 묻는 질문

shellcheck은(는) 무엇인가요?
bash와 sh 셸 스크립트에서 버그, 이식성 문제, 잘못된 습관을 찾아내는 정적 분석 도구입니다. ShellCheck는 셸 스크립트를 분석해 구문 오류, 의미상 문제, 스크립트가 잘못 동작하거나 나중에 실패하게 만들 수 있는 미묘한 함정에 관한 경고와 개선 제안을 제공합니다. bash와 sh 스크립트를 대상으로 하며, 따옴표로 감싸지 않은 변수, 잘못 사용한 테스트 연산자, 깨진 find 또는 grep 패턴, 무시된 종료 코드 등의 문제를 찾아내고 각 경고에 설명을 덧붙입니다.
shellcheck은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
shellcheck은(는) GPL-3.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
shellcheck은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. shellcheck의 마지막 커밋은 2026년 11월 5일입니다.
shellcheck은(는) 어디에 사용할 수 있나요?
CI 파이프라인에서 셸 스크립트를 린트해 새로운 경고가 발생하면 빌드를 실패 처리합니다. 스크립트를 실행하기 전에 따옴표로 감싸지 않은 변수와 위험한 rm 또는 find 패턴을 찾아냅니다. /bin/sh용으로 작성한 스크립트가 bash 전용 기능에 의존하지 않는지 확인합니다. 에디터에서 셸 스크립트를 편집하는 동안 바로 피드백을 받습니다.
shellcheck는 어떻게 설치하나요?
Homebrew로 ShellCheck 설치하기: brew install shellcheck 스크립트에 ShellCheck 실행하기: shellcheck yourscript
shellcheck은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/koalaman/shellcheck

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트