8delp***
2021-03-21

기초 문법 및 유용한 리눅스 명령어들과 더불어 실무에서 어떤 문법과 명령어로 셸 스크립트를 작성하고 사용하는지 한 권으로 배울 수 있다.
내가 기다리던 책이 출간되었다. 왜 기다렸냐면 현재 우리나라에서 셸 스크립트에 대해서 쉽고 프로그래밍 연습을 할 수 있는 풍부한 예제가 있는 셸 스크립트 책이 없었기 때문이다. 나는 업무에서 셸 스크립트를 쓰고 있는 입장인데 입사 후 구입했던 외국인 저자가 쓴 책을 번역한 셸 학습도서를 여러번 읽어보려고 노력했지만 쉽지가 않았다. 일단 재미가 없었다. 그래도 명색이 셸 책인데 변변한 연습 삼아 할 수 있는 예제도 제대로 없는 책이었다.
이것뿐이 아니다. 다른 시중에 나와있는 책들도 마찬가지다. 예를 들어 sed, grep, awk 등 다양한 셸 명령어를 가지고 그거에 대해서만 깊게 판다. 여러 옵션들을 사용한 응용 커맨드가 많이 수록되어 있더라. 그 예제라는 것도 그냥 셸에 명령어 한 줄 한 줄씩 써보는 것이 연습이다. 실질적으로 도움이 될 수가 없는 책이었다. 또 어떤 책은 셸 스크립트에 대한 입문 책인데 처음부터 냅다 데몬을 구동시키는 셸 스크립트를 작성한다. 갑자기 뜬금 없는 것이다. 과연 셸 스크립트 초보 중에 그 스크립트를 이해할만한 사람이 얼마나 될까? 데몬이 뭔지도 모르는 사람도 있을 것이다. 물론 오래된 책이라 그 책은 이제 판매되지 않는다. 아무튼 난이도가 극과 극을 달린다.
이 책은 그래도 기존에 나왔던 그냥 셸 명령어든, 셸 스크립트 책이든 모두 아울러서 가장 내가 원하는 스타일의 책이다. 우선 첫번째로 예제가 정말 프로그래밍을 짜는 것 같다. 파이썬 책만 봐도 최소 3~4라인 되는 예제가 수록되어있기 마련인데 내가 봤었던 책들은 아까 언급했던 바와 같이 그냥 명령어 한 줄이 예제의 전부였던 것이다.
두번째로 외국인 저자가 쓴 책이 아니다. 아무래도 번역서를 보면 미묘한 차이를 번역가가 놓치는 경우가 많고 저자가 의도했던 바를 못 담는 경우도 많다. 그러나 이 책은 모태 한국인 저자가 쓴 것이니 번역서를 읽는데에서 느끼는 약간의 불편함과 이질감도 없다. 설명도 친절한 편이라고 생각한다. 무엇보다도 스크립트 형식의 예제가 많다는 것이 마음에 들었다.
다음으로는 최신 기술 트렌드를 담았다는 것이다. 즉, 셸 스크립트를 응용할 수 있는 새로운 분야에 대한 내용이 다른 책들과 차별화가 된다. 그것이 바로 클라우드 시스템 운영과 AWS, 구글 클라우드 등 퍼블릭 클라우드에서 사용되는 CLI 환경에서의 셸 스크립트 활용법도 담고 있다는 것이다. 11장 모니터링 부분부터 시작해서 12장 클라우드 시스템 운영, 13장 퍼블릭 클라우드 사용 챕터에 자세히 설명되어 있다.
셸 스크립트의 기본적인 목적은 명령어를 자동화하여 반복적인 일을 편리하게 처리함에 있다. 그외에도 보안 분야에서도 굉장히 많이 사용이 된다. 우선 보안 취약점을 찾는데에 셸 스크립트가 중요한 역할을 하니까 말이다. 그런 점에서 이 책에서 보안과 관련된 스크립트 활용법에 대해서도 따로 챕터를 할애하여 배정하였다. 보안 분야에서 종사하거나 관심이 있어 공부하고 있는 학생들에게 이 책이 특히 도움이 될 것이다.
내 개인적인 생각인데 셸 스크립트를 사용하려거든 이 책을 먼저 완벽히 익히고 다른 두꺼운 셸 책들을 볼 것이 아니라 필요한 내용만 구글 검색과 기술 분야 블로그를 통해서 채워나가는 것이다. 셸 스크립트를 공부함에 있어서 가장 이상적인 공부법이라고 생각한다.
일단 셸 이라는 것 자체가 리눅스, 유닉스에서 사용하는 커맨드이다보니 리눅스, 유닉스를 익히는데에도 아무래도 도움이 될 수 밖에 없다. 이 책으로 리눅스, 유닉스 공부도 어느정도는 되지 않을까 싶다. 물론 리눅스, 유닉스 그 자체를 배우려면 다른 주 교재가 필요하겠지만 말이다.
이 책을 추천해주고 싶은 독자로는 이제 막 리눅스를 배우려는 사람들이다. 물론 이 책에서 셸 스크립트를 쓰기 위해서 리눅스나 맥을 어떻게 설치하고 셋팅해야 하는지 튜토리얼 형식으로는 된 것이 없다. 그래서 리눅스, 맥을 사용할 수 있는 환경이거나 최소한 리눅스 설치하는 방법 정도는 익힌 다음에 배우면 더 이해가 빠를 것 같다. 옛날이야 리눅스를 설치한다고 하면 윈도우 포맷 후 재설치보다 몇배는 두려움이 많았는데 지금은 VMWare나 Virtual Box라는 가상머신 소프트웨어가 있기 때문에 리눅스를 아주 편리하게 설치하고 사용할 수 있다. 책을 사기가 아깝다면 설치 방법 정도는 블로그들에도 충분히 정보가 많아서 그 부분은 블로그나 웹 자료를 참고하기를 바란다.
현재 개발자나 컴퓨터 엔지니어가 직업인 사람들을 제외하고는 리눅스를 쓰는 일이 그리 많지는 않은 것 같다. 그러나 한국형 OS라는 여러 기업, 단체에서 개발 중인 공공 보급 목적으로 개발 중인 리눅스를 공무원들이 사용하게 될 날도 오게 될 것 같다. 물론 독일의 어떤 시는 윈도우를 리눅스로 대체했다가 다시 돌아왔던 것으로 아는데 리눅스의 관공서 사용이 보편화가 성공적이든, 실패적이든 일단 앞으로 있을 것이다. 그렇게 되면 공무원들도 자동화 업무 처리를 위해서는 셸 스크립트를 필요로 하게 되는 때가 있을 것이라 예상한다. 그때 이 책의 유용성은 더욱 증가하게 될 것이다.