
CLI (Command-Line Interface) : 명령어를 입력해 컴퓨터를 조작하는 방식
GUI (Graphical User Interface) : 사용자가 화면을 통해 컴퓨터와 소통하는 방식
대량의 서버 컴퓨터를 설치해야 하는 서비스를 보면, 각각 I/O를 부착하는 일은 불가능에 가깝다.
CLI를 통해 서버 컴퓨터로 접속을 요청하면, 서버 컴퓨터는 요청한 컴퓨터의 출력소스(모니터)를 이용하기 때문에 자신의 모니터로 서버 컴퓨터와 소통할 수 있다. 매우 효율적인 방법이기 때문에 수많은 현직 개발자가 CLI로 서버 컴퓨터와 소통한다. 그리고 대부분의 서버 컴퓨터는 무료인 Linux운영체제가 설치되어 있다. 그렇기 때문에 Linux 환경에서 CLI를 이용하는 방법을 개발자라면 꼭! 학습해야 한다.
r은 "recursive"를 뜻하고 폴더를 지울 때 사용한다.f는 "force"를 뜻하며 질문을 받지 않고 삭제할 때 사용한다.-h 또는 --help 와 같은 옵션으로 확인이 가능함.
pwd: 현재 위치 확인하기
mkdir 폴더명: 새로운 폴더 생성
ls: 특정 폴더에 포함된 파일이나 폴더 확인
ls -l: 폴더나 파일의 포맷을 전부 출력
ls -a: "all"의 의미. 숨어있는 폴더나 파일을 포함한 모든 항목을 출력
ls -al또는ls -la: 위의l과a옵션을 전부 출력
nautilus: 터미널의 현재 위치를 GUI의 탐색기로 실행
cd 폴더명: 폴더에 진입
touch 파일명.확장자: 파일 생성
cat: 파일의 내용을 터미널에 출력
rm: 단일 파일 삭제
rm -rf: 질문 없이(옵션f) 폴더 삭제(옵션r)
mv [폴더나 파일 이름] [변경할 이름 or 도착폴더의 이름]: 폴더나 파일의 이름 변경, 또는 폴더나 파일 위치 옮기기
cp [원본 파일 이름] [복사될 파일 이름]: 폴더나 파일 복사 (폴더 복사시 r과 f옵션 사용)
whoami: 현재 로그인된 사용자명 확인 (폴더 형태로 존재)
sudo: 관리자 권한을 획득하는 명령어
code: GUI 에디터인 VS Code 실행
nano: 텍스트 에디터인 nano 실행
nano : 프로그램 실행 / nano hello.js : hello.js를 nano에서 열기Ctrl + R : 파일 열기 / Ctrl + T : 화살표키로 파일 경로 탐색 후 파일 및 디렉토리 불러오기Ctrl + X : 프로그램 종료. 변경사항이 있을 경우 저장할지 물어봄. Y나 N으로 결정Ctrl + O : nano를 종료하지 않고 파일이 저장됨. save 기능오늘의 한 줄
CLI를 다루기 시작하니 뭔가 찐개발자가 된 것 같은 기분이 든다ㅎㅎ 능숙하게 다룰 수 있을 때까지 연습하자!!