터미널은 글자로 컴퓨터와 소통하는 CLI(Commane-Line Interface)이다. 우분투에서는 ctrl+alt+t 단축키를 통해 터미널을 실행할 수 있다. 터미널에서 키보드의 입력을 확인하고 편집하는 한 줄의 공간, 커서가 깜빡이는 곳을 프롬프트(prompt)라고 한다.
CLI와 GUI는 컴퓨터와 소통하는 방식의 차이일 뿐, 같은 컴퓨터를 조작한다. 따라서 CLI로 명령한 작업을 GUI로 확인할 수 있고, GUI로 명령한 작업을 CLI에서 확인할 수 있다.
pwd: Printing Working Directory의 약자로 현재 위치를 확인하는 명령어mkdir: 새로운 폴더를 생성하는 명령어mkdir hello/ worldls: 폴더나 파일의 목록을 출력하는 명령어ls -l ls -a 옵션도 있다. 두 옵션을 동시에 사용할 수도 있다.nautilus . : 현재 폴더를 파일 탐색기로 여는 명령어cd: Change Directory의 약자로 경로를 바꾸는 명령어touch: 새로운 파일을 생성하는 명령어cat: 파일의 내용을 터미널에 출력하는 명령어rm : 폴더나 파일을 삭제하는 명령어rm -rf : 폴더를 삭제할 때는 옵션을 사용해야 한다.mv: 폴더나 파일의 위치를 이동하거나, 이름을 변경하는 명령어mv bye.txt bye/ : bye.txt를 bye 폴더로 이동한다. 뒤에 백슬래쉬를 생략하면 이름이 바뀐다.mv t2.txt ../t2 : t2.txt를 상위 폴더로 옮기고 t2로 이름을 변경한다.cp: 폴더나 파일을 복사하는 명령어-rf 옵션을 사용해줘야 한다.sudo: 관리자 권한을 일시적으로 빌려오는 명령어우분투는 사용자와 관리자를 철저하게 분리해서 사용자의 실수로 발생하는 시스템 에러로부터 운영체제를 보호한다. 사용자가 프로그램을 설치, 변경 혹은 삭제하고 하려면 일시적으로 관리자 권한을 빌려와야 한다.
/ : 루트 디렉토리~ : 홈 디렉토리. 사용자 폴더의 경로는 ~/로 축약되어 표시된다.(.)으로 나타내고 상위 폴더는 두 개의 점(..)으로 나타낸다../ : 현재 폴더 아래의 라는 뜻을 가진다.터미널에서 다룰 수 있는 에디터 nano에 대해서 배운다.
nano hi.jsnano code . 패키지 안에는 하나의 프로그램이 정상적으로 설치되고 동작하기 위한 모든 파일이 압축되어 있다. (프로그램 파일, 프로그램 설치 파일, 프로그램 설치 설명서, 프로그램에 대한 정보를 담은 파일)
패키지 매니저는 패키지의 설치, 변경, 삭제 등 관리를 편리하게 해주는 도구다.
관리자 권한 sudo 명령어가 필요한 명령어가 있다.
nvm은 node version manager로 node.js의 다양한 버전을 쉽게 설치하고 사용할 수 있게 해주는 관리 프로그램이다.
nvm --version 버전확인node -v 버전확인node.js는 Javascript의 런타임(프로그래밍 언어가 실행되는 환경)이다. node.js를 통해 JavaScript 코드를 브라우저와 node.js 환경 모두에서 실행시킬 수 있다.
node <파일네임> 명령어를 프롬프트에 입력하면 작성한 코드가 node.js 런타임에서 실행된다.npm은 Node Package Manager로 일종의 앱스토어이다. 프로그램 작동에 필요한 모듈을 다운로드할 수 있는 모듈 스토어이다.
프로젝트에 필요한 모듈에 대한 정보를 담아둔 곳이 package.json이다. 개발은 혼자만 하는 것이 아니라 함께 하기 때문에, 이런 정보 파일이 필요하다.
npm install명령어를 활용해 다운로드 할 수 있다. 설치가 완료되면 node_modules 디렉토리가 생긴다.devDependencies : 프로그램 실행과 관계없는 개발 환경에 필요한 모듈들에 대한 정보--save-dev 옵션을 뒤에 붙여서 설치해야 한다. dependencies : 이 프로젝트가 돌아가기 위해 반드시 필요한 모듈들에 대한 정보 scripts : CLI에서 사용가능한 명령을 적어둔다. CLI에서 실행할 때 npm run <script name>으로 실행한다.npm run submit 명령어를 사용해서 과제를 제출해보기도 했다.