full stack mysql, node js express,react

JS FULL STACK 7장 , 리눅스 명령어

우주전사버즈 2024. 1. 18. 14:49

왜 공부했을까?

 

마우스가 있는데 왜 어두컴컴한 터미널에서 굳이 명령어를 타이핑하면서 작업을 해야할까

교수님이나 강사님들의 얘기에는 우리는 전문가가되어야하기 때문이라는 대답을 들었다.

그러나 나는 추상적인 이유보다 보다 명확한 이유를 짚고 가야한다고 생각이 들어서 나만의 결론을 내리기위해 다른 글들을 읽어보았다.

빠른 파일 작업

같은 작업을 할때 마우스로 하나하나 클릭하는 GUI(Graphic User Interface)작업보다

명령어를 이용한 CLI (Command-Line Interface)작업이 훨씬 빠르다

ex)/폴더1/폴더2 에들어가서 폴더 3을만든다 

CLI로하면 한줄에 명령어를 작성해서 금방 작업가능 GUI는 폴더를 두번이나 거쳐서 클릭해서들어가야함. 폴더를들어가는과정에서
문제가 생길수도있음(폴더를못찾는다던가, 렉이걸린다던가)

 

내가 왜 공부해야할까

명령어의 장점을 안다쳐도 내가 직접 공부해야할 목적이 없다면 해야할 이유도없다.

개발공부를 진행하다보면 어떤문제가 발생했기때문에 어떤 문제를 해결하기 위해 새로운 것을 학습한다라는 사실을 알게 된다.

이전 시간에 Todo 웹앱을 만들기 위해 DB를 구축하고 express 프레임워크를 통해 CRUD API도 만들어두었다.

그러면 다른 사용자들이 API를 이용할수 있도록 배포를 해봐야 하지않을까? 라는 새로운 문제를 발견하게 되었다.

정확히 이후 과정에서 docker를 이용해 이미지를 만들고 그것을 fly.io로 만들어둔 애플리케이션을 배포 하기 위해 공부할것이다.

docker라는것이 바로 리눅스 기반의 기술이라 리눅스에 대한 명령어를 공부하는 이유는 보다 명확했다.

 

 

BASH SHELL 변경

SHELL이라는것은 운영체제와 대화하기위한 해석도구 즉 사람과 운영체제가 소통할수있도록 해주는 번역기의역할이다.

나는 MAC OS를 이용중인데  MAC OS의 터미널은 기본적으로 zsh shell을 기본값으로 사용중인데

보다 대중적으로 많이쓰이는 Bash shell로 변경해주는 작업을 우선적으로 하였다.

 

bash shell을 사용하려면 Git이 설치되있어야한다.

mac에서 iterm을 킨뒤에 

zsh -> bash 변경하기위해

chsh -s /bin/bash 
맥에서 설정해둔 비번입력하면 변경됨

현재 shell 확인법

echo $SHELL

 

 

리눅스 기본 명령어 메뉴얼

이전 학기 대학교강의 시간에 리눅스에 대한 내용을 이미 공부한 적 있는지라.

어쨋든 명령어들을 일일이 외워두고 사용하기보다 메뉴얼로써, 혹은 cheet sheet와같은걸 만들어둠으로써 그때 그때 필요한 명령어를 

찾아보면서 사용하는 방식으로 공부해야한다는 생각이 들었다.

 

이전학기에 과제로 제출했던 리눅스 기본 명령어 메뉴얼 파일이 이미있다.

 

파일 배포 링크 - 한컴독스

한컴독스로 공유함

www.hancomdocs.com

여기에 정리된 기본명령어 + Vi편집기(필수로알아야되는데)정도만 알아도 기본명령어에대한 이해도는 충분하다고생각한다.

나는 이전학기에 이미공부해뒀던 내용이라. 생각이 안날경우 따로 찾아보는 식으로 공부하려고한다.