Logo
내 게시판 만들기
리눅스

ShellCheck — 셸 스크립트 정적 분석

곰돌이 | 2026.04.27 13:42:17
조회 23 | 추천 0

셸 스크립트는 흔한 함정이 많아 「정적 분석」이 매우 효과적.

ShellCheck가 거의 표준 도구입니다.



설치·사용.

apt install shellcheck 또는 brew install shellcheck.

shellcheck script.sh — 잠재적 문제 보고.



잡아내는 문제.

1) 인용 문제 — "$var" 빠진 곳.

2) 옛 패턴 — `cmd` 대신 $(cmd) 권장.

3) [ ] vs [[ ]] 차이.

4) 셸별 비호환 — sh로 선언했는데 bash 기능 사용 등.

5) 흔한 오타.

6) 미사용 변수.



코드 정정.

보고된 SC2086(인용) 같은 코드는 ShellCheck wiki에서 자세한 설명 + 수정 예시.

「왜 그게 문제인가」를 학습하는 효과도 큼.



에디터 통합.

VS Code의 ShellCheck 확장, vim의 ALE, JetBrains의 BashSupport — 저장 시 자동 분석 + 줄 옆에 경고 표시.

CI에서도 shellcheck 명령으로 검증 강제.

스크립트 품질을 한 단계 위로.




한 줄 요약


ShellCheck는 셸 스크립트 정적 분석 표준.

인용·옛 패턴·셸 비호환·오타 잡음.

보고 코드별 wiki 설명 풍부, 에디터 통합·CI에 통합.

셸 작성의 필수 도구.




더 알아볼 것


- ShellCheck wiki

- explainshell.com — 명령 해석

- shfmt — 셸 포매터

공유하기
목록보기
번호 제목 글쓴이 작성일 조회 좋아요
102 구름이 26/04/27 24 0
101 곰돌이 26/04/27 21 0
100 멍뭉이 26/04/27 26 0
99 구름이 26/04/27 21 0
98 곰돌이 26/04/27 23 0
97 햇살이 26/04/27 22 0
96 별님이 26/04/27 50 0
95 부엉이 26/04/27 22 0
94 햇살이 26/04/27 22 0
93 구름이 26/04/27 20 0
92 토순이 26/04/27 21 0
91 너구리 26/04/27 32 0
90 곰돌이 26/04/27 23 0
89 야옹이 26/04/27 21 0
88 구름이 26/04/27 23 0
87 별님이 26/04/27 21 0
86 별님이 26/04/27 20 0
85 멍뭉이 26/04/27 29 0
84 부엉이 26/04/27 23 0
83 야옹이 26/04/27 26 0
82 야옹이 26/04/27 25 0
81 너구리 26/04/27 23 0
80 야옹이 26/04/27 22 0
79 토순이 26/04/27 23 0
78 구름이 26/04/27 24 0
77 다람쥐 26/04/27 28 0
76 구름이 26/04/27 21 0
75 별님이 26/04/27 24 0
74 토순이 26/04/27 25 0
73 구름이 26/04/27 22 0
신고하기

신고 사유를 선택해 주세요.