셸을 단순히 사용하는 것에서 나아가 ‘잘’ 활용할 수 있다면 더 많은 일을 쉽게 할 수 있습니다. 개발자뿐만 아니라 시스템 관리자 등 셸을 항상 사용해야 하는 사람이라면 더더욱 셸 명령을 잘 알아야 합니다. 예를 들어 한 디렉터리 안에서 내용이 같은 파일을 찾고 싶다면 어떻게 해야 할까요? 셸 명령(셸 스크립트)에 익숙하지 않다면 파이썬 등의 언어로 프로그램을 하나 짜야겠죠? 이 문제는 이번에 나온 《아트 오브 셸 원라이너 160제》의 실전 문제 109번 내용입니다.
챗GPT에게 파이썬으로 짜라고 시키니까 29줄짜리 코드가 나옵니다.
검색해보니 스택오버플로에는 더 긴 코드가 있긴 하네요(중복 파일을 찾아서 제거까지 하는 버전). https://stackoverflow.com/questions/748675/finding-duplicate-files-and-removing-them
단순히 해시값 같은 파일들만 찾는 게 이렇게 어려울 필요가 있을까요? awk, find, md5sum, xargs 같은 셸 커맨드를 알고 있다면 다음과 같이 단 한 줄로 해결할 수 있습니다. 자세한 해설은 《아트 오브 셸 원라이너 160제》 394~396쪽을 참고하세요.
sudo find /etc -type f | sudo xargs md5sum | awk '{a[$1]=a[$1]" "$2}END{for(k in a){print k, a[k]}}' | awk 'NF>2'
물론 짧은 코드가 항상 좋은 건 아닙니다. 그럼에도 코드 골프 같은 스포츠(?)가 존재하는 것처럼, 이렇게 문제를 간단하게 해결하기 위해 사고하는 행위 자체로 문제 해결 능력을 키울 수 있습니다. 그런 의미에서 하루 한 문제씩 꾸준하게 160개 문제를 풀며 커맨드 근육을 키우는 방법을 설명한 책이 바로 《아트 오브 셸 원라이너 160제》입니다. 일본의 ‘셸 장인’들이 출제한 극한 문제들이 당신을 기다리고 있습니다. 지금 도전해보세요.
■ 미리보기(옮긴이 머리말, 베타리더 후기, 지은이 소개, 이 책에 대하여, 감사의 글, 1장 일부)
■ 도서구매 사이트(가나다순)
[교보문고] [도서11번가] [알라딘] [예스이십사] [인터파크] [쿠팡] |
■ 제이펍 소식 더 보기(제이펍의 소통 채널에서 더욱 다양한 소식을 확인하세요!)
포스트 유튜브 인스타그램 트위터 페이스북 |
'출간 전 책 소식' 카테고리의 다른 글
카프카를 창시한 사람들이 쓰고, 카프카 개발에 참여한 이가 옮긴 핵심 실무서 (2) | 2023.04.11 |
---|---|
보기 좋은 책이 공부하기도 좋다 (0) | 2023.04.03 |
일상적이고 평범한 공간을 더 아름답고 특별하게 기억하는 방법 (0) | 2023.02.23 |
테스트 고민을 싹 없애는 효과적인 테스트 방법 (2) | 2023.02.22 |
챗GPT 같은 AI 소프트웨어를 테스트하고 싶다면 (0) | 2023.02.21 |