리눅스의 장점인 “파이프라인”
책리뷰: <모두의 리눅스>
“리눅스의 장점인 파이프라인을 쉽게 그림으로 설명”
어렸을때 책이 좋았다가 영상을 좋아해서 넷플릭스를 탐독하다가, 이젠 돌고 돌아 다시 글, 활자가 좋아졌다.
모든것은 그럴시기가 있는 것처럼, 다시 돌고 돌아 기본인 리눅스에 관심이 다시 돌아왔다.
“리누스 토르발스 형 잘지내시죠 ~ ^^” (한번도 직접 뵌적없음 ㅋ)
최근에 리눅스 커널에서 드라이버를 개발할때 Rust
언어를 이용해보시고 있다죠? raw pointer를 안전하게 처리가 좀더 손쇱게 되길 바래요.
처음 리눅스를 만난건 아마 1993년도쯤 데비안과 슬랙웨웨어 배포판이 처음 나왔다면 컴퓨터잡지에 소개됐을대 같아. 그땐 배포판이 무슨말인 지도 모르고 아 리눅스가 2개가 있는것인가 하면서 했던거 같다. 이제보니 책에서도 개념을 잡아가면서 설명해주어서 접하기 좋게 정리되어 있구나.
리눅스 커널과 함께 기본적인 명령어와 애플리케이션을 묶어서 바로 사용자가 사용 할 수 있게 패키징한 것이 넓은 의미의 리눅스입니다. 그리고 이것이 바로 리눅스 배포판입니다. — <모두의 리눅스> 18p
리눅스 배포판을 만들고 관리하는것은 이 영리적으로 도움이안되는데 1993년도 부터 2022년 2월 2일 지금까지 지속적으로 배포하고 관리하는 사람과 배포판이 있습니다. 기억속에서 잊혀서 생각도 하지 않고 있다가. 깃뉴스에서 “슬랙웨어 릴리스 노트”라는 제목을 보고 향수 혹은 라~떼가 생각나며, 사이트에 들어가서 릴리즈 노트를 읽어봤어요.
사실 생각도 안했어요. 릴리즈 노트 읽다가 뭉클해지는 감정이 들줄은…
슬랙웨어 배포판의 공동설립자인 팻 볼커딩과 27년간 같이 하던 에릭에 대한 추모의 글도 있었습니다. 길 시간동안 같이 동거 동락하며 하나의 일을 지속적으로 했고, 동료이자 친구지만 직접 만난 적 없이 지내왔다는 최고의 베타 테스터 그리고 준 공동 설립자인 친구에게 바치는 글이였습니다. 많은 생각을 하게 해주었습니다.
시대는 흘러 흘러 이제는 윈도우에서도 하위시스템으로 리눅스를 설치 할 수 있도록 하는 WSL을 출시 했고, 설치 하고 이것저것 옵션을 만지는 재미에 밤새는 걸 모르고 계속 했네요.
WSL : Linux용 Windows 하위 시스템 https://docs.microsoft.com/ko-kr/windows/wsl/about
추억과 감성에 젖어 본 책에 없는 것들을 생각해봤으니, 이제 책에서 가장 맘에 드는 부분들을 살펴보자.
11장 표준 입출력과 파이프라인
12.2 sort 명령어: 행 단위로 정렬하기
12.3 uniq 명령어: 중복 제거하기
14.1 sed 명령어: 스트림 에디터
14.2 awk 명령어: 패턴 검색 및 처리 언어
각 장별 코드를 모아서 연습 해볼 수 있도록 해두었다.
https://github.com/gilbutITbook/080282/blob/main/장별 코드.txt
curl <https://raw.githubusercontent.com/gilbutITbook/080282/main/%EC%9E%A5%EB%B3%84%20%EC%BD%94%EB%93%9C.txt> | tr '[:space:]' '[\\n*]' | grep -v "^\\s*$" | grep -v ".txt" | grep -v "\\/" | grep -v "\\-" | grep -v "file" | grep -v "dir" | sort | uniq -c | sort -bnr | sed -n 1,50p
예시중에 어떤 명령어가 많이 사용되었나? 궁금하지 않으세요? ㅎ 배운걸 응용해보니 이렇게 정리되네요
105 ls
42 git
41 |
41 cat
35 grep
27 echo
17 sed
16 sort
...
ls가 가장 많이 105번 언급되었고 git도 42번이나 예시에 언급되었군요. 이렇게 간단히 문서에 서 어떤 명령어가 몇번 사용되었는 확인을 하고 싶을때 위의 코드처럼 한번에 처리가 가능해요.
더 다양한 응용을 해보세요.
모두가 쉽게 사용할 수 있도록 어려운 부분은 예시와 같이 보여준다.
이제 모두의 리눅스가 되어보자.
조금더 친숙하게 조금더 핸디 하게
구매링크 http://www.yes24.com/Product/Goods/105764506
연습문제
ps. 간단하게 텍스트를 분석하고 하는거라면, 프로그램을 짜고 엑셀로 꼭 분석하지 않아도 쉽게 처리 할 수 있죠. 사내에서 사용했던 경험을 공유해보세요